Excel при обновлении ячейки

Содержание

  1. Как обновить ячейки в excel после смены формата
  2. Как сохранить форматирование после обновления сводной таблицы?
  3. Изменение формата ячеек в Excel
  4. Виды форматов ячеек
  5. Метод 1: через контекстное меню
  6. Метод 2: применение инструментов на лене
  7. Блок “Число”
  8. Блок “Ячейки”
  9. Метод 3: использование горячих клавиш
  10. Заключение
  11. Изменение формата ячеек в Excel
  12. Основные виды форматирования и их изменение
  13. Способ 1: контекстное меню
  14. Способ 2: блок инструментов «Число» на ленте
  15. Способ 3: блок инструментов «Ячейки»
  16. Способ 4: горячие клавиши
  17. Excel при обновлении ячейки
  18. Как только пересчитать или обновить выбранные ячейки в Excel?

Как обновить ячейки в excel после смены формата

Как сохранить форматирование после обновления сводной таблицы?

Иногда вы можете случайно снять флажок Сохранить форматирование ячеек при обновлении в параметрах сводной таблицы. И в этом случае форматирование будет удалено после обновления, если ваша сводная таблица содержит форматирование ячеек. Очень раздражает то, что сводная таблица не может сохранить форматирование. Сегодня я расскажу о простом приеме для решения этой задачи.

Сохранить форматирование после обновления сводной таблицы

  • Повторно использовать что угодно: добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
  • Более 20 функций текста: извлечение Число из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
  • Инструменты слияния: несколько книг и листов в одну; Объединить несколько ячеек/строк/столбцов без потери данных; Объедините повторяющиеся строки и суммируйте.
  • Инструменты разделения: разделение данных на несколько листов в зависимости от значения; Из одной книги в несколько файлов Excel, PDF или CSV; Один столбец в несколько столбцов.
  • Вставить пропуск скрытых/отфильтрованных строк; Подсчет и сумма по цвету фона; Массовая отправка персонализированных писем нескольким получателям.
  • Суперфильтр: создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделе, дню, частоте и т. Д. Фильтр жирным шрифтом, формулами, комментарием …
  • Более 300 мощных функций; Работает с Office 2007-2019 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.
Сохранить форматирование после обновления сводной таблицы

Потрясающе! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Сэкономьте 50% своего времени и сократите тысячи щелчков мышью каждый день!

Чтобы сохранить форматирование ячеек при обновлении сводной таблицы, выполните следующие действия:

1. Выберите любую ячейку в сводной таблице и щелкните правой кнопкой мыши.

2 . Затем выберите Параметры сводной таблицы в контекстном меню, см. Снимок экрана:

3 . В диалоговом окне Параметры сводной таблицы перейдите на вкладку Макет и формат , а затем установите флажок Сохранять форматирование ячеек при обновлении в разделе раздел Формат , см. снимок экрана:

4 . Затем нажмите OK , чтобы закрыть это диалоговое окно, и теперь, когда вы отформатируете сводную таблицу и обновите ее, форматирование больше не исчезнет.

Изменение формата ячеек в Excel

Для того, чтобы программа Эксель правильно идентифицировала данные в ячейках таблицы, что особо актуально при работе с формулами и функциями, пользователь должен определиться и указать, какие значения в них содержатся: текстовые, числовые, денежные и т.д. В противном случае, вероятнее всего, будут ошибки. Итак, давайте посмотрим, каким образом можно задавать и изменять формат ячеек в Excel.

  • Виды форматов ячеек
  • Метод 1: через контекстное меню
  • Метод 2: применение инструментов на лене
    • Блок “Число”
    • Блок “Ячейки”

    Виды форматов ячеек

    Для начала перечислим основные форматы ячеек, которые доступны в табличном редакторе:

    • Общий;
    • Числовой;
    • Денежный;
    • Финансовый;
    • Дата;
    • Время;
    • Процентный;
    • Дробный;
    • Экспоненциальный;
    • Текстовый;
    • Дополнительный.

    Примечание: для большинства из перечисленных форматов можно настроить вид отображения данных (например, “Дата”). Ненастраиваемыми являются форматы: Общий и Текстовый.

    Давайте теперь перейдем, непосредственно, к методами изменения формата ячеек.

    Метод 1: через контекстное меню

    Данный метод является самым распространенным среди пользователей. Вот что мы делаем:

    1. Щелкаем правой кнопкой мыши по ячейке, формат которой требуется задать/изменить, и в появившемся списке команд выбираем “Формат ячеек”.Если данное действие требуется выполнить для диапазона ячеек, сначала любым удобным способом выделяем его, после чего, также, правой кнопкой мыши кликаем по любому месту внутри выделенной области и выбираем нужный пункт.
    2. На экране отобразится окно “Формат ячеек”. Автоматически должна быть выбрана вкладка “Число” (если по каким-то причинам этого не произошло, переключаемся в нее). В перечне слева определяемся с форматом, после чего справа задаем детальные параметры (если предлагаются). По готовности щелкаем OK.
    3. В результате нам удалось сменить формат ячеек (в нашем случае – числовой, с разделителем разрядов, две цифры после запятой).

    Метод 2: применение инструментов на лене

    На ленту программы Excel разработчики вынесли самые популярные функции и команды, в т.ч., здесь есть кнопки для изменения формата ячеек.

    Блок “Число”

    1. Выбрав ячейку или выделив определенный диапазон во вкладке “Главная” в группе инструментов “Число” щелкаем по стрелке вниз рядом с текущим форматом.
    2. Раскроется список вариантов (можно прокручивать вверх-вниз), среди которых выбираем нужный.Примечание: Данный способ позволяет выбрать только форматы в их базовом виде. Для их более детальной настройки нам нужны “Другие числовые форматы”.В результате, перед нами появится то же самое окно форматирования, которое мы уже рассмотрели в первом методе.

    Блок “Ячейки”

    1. Производим выделение требуемой ячейки/диапазона и в главной вкладке в блоке инструментов “Ячейки” щелкаем по кнопке “Формат”.
    2. В появившемся списке кликаем по строке “Формат ячеек”.
    3. И снова откроется окно форматирования, в котором мы можем выполнить требуемые настройки.

    Метод 3: использование горячих клавиш

    Комбинации клавиш позволяют пользователям быстрее выполнять популярные команды или запускать распространенные функции. Для смены формата ячеек также предусмотрено отдельное сочетание.

    1. Как и в методах выше, для начала выделяем ячейку или диапазон.
    2. Затем нажимаем клавиши Ctrl+1.
    3. Откроется уже хорошо знакомое окно, где можно выбрать тип данных и настроить их отображение.

    Примечание: Чаще всего, комбинации Ctrl+1 достаточно. Для тех, кто еще больше хочет ускорить работу, предусмотрены следующие горячие клавиши, позволяющие выбрать формат (основной вид) без открытия соответствующего окна:

    • Ctrl+Shift+1 – числовой (с разделителем и двумя цифрами после запятой);
    • Ctrl+Shift+4 – дата (ДД.ММ.ГГГГ);
    • Ctrl+Shift+5 – процентный (без десятичных знаков);
    • Ctrl+Shift+6 – время (Часы:Минуты).

    Заключение

    Таким образом, изменение формата ячеек в Эксель – процедура, которую можно выполнить разными способами. Каждый пользователь может выбрать для себя тот, который покажется наиболее удобным и быстрым.

    Изменение формата ячеек в Excel

    Формат ячейки в программе Эксель задает не просто внешний вид отображения данных, но и указывает самой программе, как именно их следует обрабатывать: как текст, как числа, как дату и т.д. Поэтому очень важно правильно установить данную характеристику диапазона, в который будут вноситься данные. В обратном случае, все вычисления будут просто некорректными. Давайте выясним, как изменить формат ячеек в Microsoft Excel.

    Основные виды форматирования и их изменение

    Сразу определим, какие форматы ячеек существуют. Программа предлагает выбрать один из следующих основных видов форматирования:

    • Общий;
    • Денежный;
    • Числовой;
    • Финансовый;
    • Текстовый;
    • Дата;
    • Время;
    • Дробный;
    • Процентный;
    • Дополнительный.

    Кроме того, существует разделение на более мелкие структурные единицы вышеуказанных вариантов. Например, форматы даты и времени имеют несколько подвидов (ДД.ММ.ГГ., ДД.месяц.ГГ, ДД.М, Ч.ММ PM, ЧЧ.ММ и др.).

    Изменить форматирование ячеек в Excel можно сразу несколькими способами. О них мы подробно поговорим ниже.

    Способ 1: контекстное меню

    Самый популярный способ изменения форматов диапазона данных – это использование контекстного меню.

      Выделяем ячейки, которые нужно соответствующим образом отформатировать. Выполняем клик правой кнопкой мыши. Вследствие этого открывается контекстный список действий. Нужно остановить выбор на пункте «Формат ячеек…».

    После этих действий формат ячеек изменен.

    Способ 2: блок инструментов «Число» на ленте

    Форматирование также можно изменить, используя инструменты, находящиеся на ленте. Этот способ выполняется даже быстрее предыдущего.

      Переходим во вкладку «Главная». При этом, нужно выделить соответствующие ячейки на листе, а в блоке настроек «Число» на ленте открыть поле выбора.

    Способ 3: блок инструментов «Ячейки»

    Ещё одним вариантом настройки данной характеристики диапазона является использования инструмента в блоке настроек «Ячейки».

      Выделяем диапазон на листе, который следует отформатировать. Располагаясь во вкладке «Главная», кликаем по значку «Формат», который находится в группе инструментов «Ячейки». В открывшемся списке действий выбираем пункт «Формат ячеек…».

    Способ 4: горячие клавиши

    И наконец, окно форматирования диапазона можно вызвать при помощи так называемых горячих клавиш. Для этого нужно предварительно выделить изменяемую область на листе, а затем набрать на клавиатуре комбинацию Ctrl+1. После этого, откроется стандартное окно форматирования. Изменяем характеристики так же, как об этом было уже сказано выше.

    Кроме того, отдельные комбинации горячих клавиш позволяют менять формат ячеек после выделения диапазона даже без вызова специального окна:

    • Ctrl+Shift+- — общий формат;
    • Ctrl+Shift+1 — числа с разделителем;
    • Ctrl+Shift+2 — времени (часы.минуты);
    • Ctrl+Shift+3 — даты (ДД.ММ.ГГ);
    • Ctrl+Shift+4 – денежный;
    • Ctrl+Shift+5 – процентный;
    • Ctrl+Shift+6 — формат О.ООЕ+00.

    Как видим, существует сразу несколько способов отформатировать области листа Excel. Эту процедуру можно совершить, воспользовавшись инструментами на ленте, вызовом окна форматирования или горячими клавишами. Каждый пользователь сам решает, какой вариант для него является наиболее удобным в решении конкретно поставленных задач, ведь в одних случаях достаточно применения общих форматов, а в других — требуется точное указание характеристик по подвидам.

    Мы рады, что смогли помочь Вам в решении проблемы.

    Источник

    Excel при обновлении ячейки

    Как только пересчитать или обновить выбранные ячейки в Excel?

    Из-за частого использования сложных формул в Excel многие пользователи Excel склонны менять расчет книги с автоматического расчета на ручной. В ручном режиме вычисления вам необходимо пересчитать ячейки формулы, чтобы получить обновленный результат при изменении значений ссылочных ячеек. В этой статье мы покажем вам, как пересчитать или обновить только выбранные ячейки в Excel.

    Предположим, что формулы находятся в диапазоне F2: F10, как показано на скриншоте ниже. После изменения значений в столбце D или E вам необходимо пересчитать ячейки формулы в столбце F, чтобы получить новые результаты. Пожалуйста, сделайте следующее.

    1. После изменения значений опорных ячеек выберите ячейки формулы, которые необходимо пересчитать, затем нажмите кнопку F9 ключ. Затем вы можете увидеть, что результаты выбранных ячеек формулы обновляются сразу.

    Внимание: После нажатия этой клавиши выреза все формулы на листе, которые меняют ссылочные ячейки, будут обновлены сразу.

    Кроме того, вы можете запустить следующий код VBA, чтобы пересчитать только выбранные ячейки в Excel.

    1. Выберите ячейки формулы, которые необходимо пересчитать, затем нажмите другой + F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.

    2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули. Затем скопируйте и вставьте приведенный ниже код VBA в окно модуля.

    Код VBA: пересчитывать только выбранные ячейки в Excel

    3. нажмите F5 для запуска кода, то выбранные ячейки формулы немедленно пересчитываются.

    Источник

Как сохранить форматирование после обновления сводной таблицы?

Иногда вы можете случайно снять флажок Сохранить форматирование ячеек при обновлении в параметрах сводной таблицы. И в этом случае форматирование будет удалено после обновления, если ваша сводная таблица содержит форматирование ячеек. Очень раздражает то, что сводная таблица не может сохранить форматирование. Сегодня я расскажу о простом приеме для решения этой задачи.

Сохранить форматирование после обновления сводной таблицы

  • Повторно использовать что угодно: добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
  • Более 20 функций текста: извлечение Число из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
  • Инструменты слияния: несколько книг и листов в одну; Объединить несколько ячеек/строк/столбцов без потери данных; Объедините повторяющиеся строки и суммируйте.
  • Инструменты разделения: разделение данных на несколько листов в зависимости от значения; Из одной книги в несколько файлов Excel, PDF или CSV; Один столбец в несколько столбцов.
  • Вставить пропуск скрытых/отфильтрованных строк; Подсчет и сумма по цвету фона; Массовая отправка персонализированных писем нескольким получателям.
  • Суперфильтр: создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделе, дню, частоте и т. Д. Фильтр жирным шрифтом, формулами, комментарием …
  • Более 300 мощных функций; Работает с Office 2007-2019 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.
Сохранить форматирование после обновления сводной таблицы

Потрясающе! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Сэкономьте 50% своего времени и сократите тысячи щелчков мышью каждый день!

Чтобы сохранить форматирование ячеек при обновлении сводной таблицы, выполните следующие действия:

1. Выберите любую ячейку в сводной таблице и щелкните правой кнопкой мыши.

2 . Затем выберите Параметры сводной таблицы в контекстном меню, см. Снимок экрана:

3 . В диалоговом окне Параметры сводной таблицы перейдите на вкладку Макет и формат , а затем установите флажок Сохранять форматирование ячеек при обновлении в разделе раздел Формат , см. снимок экрана:

4 . Затем нажмите OK , чтобы закрыть это диалоговое окно, и теперь, когда вы отформатируете сводную таблицу и обновите ее, форматирование больше не исчезнет.

Для того, чтобы программа Эксель правильно идентифицировала данные в ячейках таблицы, что особо актуально при работе с формулами и функциями, пользователь должен определиться и указать, какие значения в них содержатся: текстовые, числовые, денежные и т.д. В противном случае, вероятнее всего, будут ошибки. Итак, давайте посмотрим, каким образом можно задавать и изменять формат ячеек в Excel.

  • Виды форматов ячеек
  • Метод 1: через контекстное меню
  • Метод 2: применение инструментов на лене
    • Блок “Число”
    • Блок “Ячейки”

    Виды форматов ячеек

    Для начала перечислим основные форматы ячеек, которые доступны в табличном редакторе:

    Форматы ячеек в Excel

    • Общий;
    • Числовой;
    • Денежный;
    • Финансовый;
    • Дата;
    • Время;
    • Процентный;
    • Дробный;
    • Экспоненциальный;
    • Текстовый;
    • Дополнительный.

    Примечание: для большинства из перечисленных форматов можно настроить вид отображения данных (например, “Дата”). Ненастраиваемыми являются форматы: Общий и Текстовый.

    Настройка формата ячеек в Эксель

    Давайте теперь перейдем, непосредственно, к методами изменения формата ячеек.

    Метод 1: через контекстное меню

    Данный метод является самым распространенным среди пользователей. Вот что мы делаем:

    1. Щелкаем правой кнопкой мыши по ячейке, формат которой требуется задать/изменить, и в появившемся списке команд выбираем “Формат ячеек”.Переход в окно форматирования ячеек через контекстное меню в ExcelЕсли данное действие требуется выполнить для диапазона ячеек, сначала любым удобным способом выделяем его, после чего, также, правой кнопкой мыши кликаем по любому месту внутри выделенной области и выбираем нужный пункт.Переход в окно форматирования ячеек через контекстное меню в Эксель
    2. На экране отобразится окно “Формат ячеек”. Автоматически должна быть выбрана вкладка “Число” (если по каким-то причинам этого не произошло, переключаемся в нее). В перечне слева определяемся с форматом, после чего справа задаем детальные параметры (если предлагаются). По готовности щелкаем OK.Выбор числового формата ячеек в Эксель
    3. В результате нам удалось сменить формат ячеек (в нашем случае – числовой, с разделителем разрядов, две цифры после запятой).Диапазон ячеек с числовым форматом в Excel

    Метод 2: применение инструментов на лене

    На ленту программы Excel разработчики вынесли самые популярные функции и команды, в т.ч., здесь есть кнопки для изменения формата ячеек.

    Блок “Число”

    1. Выбрав ячейку или выделив определенный диапазон во вкладке “Главная” в группе инструментов “Число” щелкаем по стрелке вниз рядом с текущим форматом.Выбор формата ячейки на ленте программы Эксель
    2. Раскроется список вариантов (можно прокручивать вверх-вниз), среди которых выбираем нужный.Выбор формата ячейки на ленте программы ExcelПримечание: Данный способ позволяет выбрать только форматы в их базовом виде. Для их более детальной настройки нам нужны “Другие числовые форматы”.Переход в окно форматирования ячеек через ленту программы ExcelВ результате, перед нами появится то же самое окно форматирования, которое мы уже рассмотрели в первом методе.Окно форматирования ячеек в Эксель

    Блок “Ячейки”

    1. Производим выделение требуемой ячейки/диапазона и в главной вкладке в блоке инструментов “Ячейки” щелкаем по кнопке “Формат”.Изменение формата ячеек с помощью кнопок на ленте программы Excel
    2. В появившемся списке кликаем по строке “Формат ячеек”.Переход в окно форматирования ячеек через ленту программы Эксель
    3. И снова откроется окно форматирования, в котором мы можем выполнить требуемые настройки.

    Метод 3: использование горячих клавиш

    Комбинации клавиш позволяют пользователям быстрее выполнять популярные команды или запускать распространенные функции. Для смены формата ячеек также предусмотрено отдельное сочетание.

    1. Как и в методах выше, для начала выделяем ячейку или диапазон.Выделенный диапазон ячеек в Эксель
    2. Затем нажимаем клавиши Ctrl+1.Горячие клавиши для изменения формата ячейки в Excel
    3. Откроется уже хорошо знакомое окно, где можно выбрать тип данных и настроить их отображение.

    Примечание: Чаще всего, комбинации Ctrl+1 достаточно. Для тех, кто еще больше хочет ускорить работу, предусмотрены следующие горячие клавиши, позволяющие выбрать формат (основной вид) без открытия соответствующего окна:

    • Ctrl+Shift+1 – числовой (с разделителем и двумя цифрами после запятой);
    • Ctrl+Shift+4 – дата (ДД.ММ.ГГГГ);
    • Ctrl+Shift+5 – процентный (без десятичных знаков);
    • Ctrl+Shift+6 – время (Часы:Минуты).

    Заключение

    Таким образом, изменение формата ячеек в Эксель – процедура, которую можно выполнить разными способами. Каждый пользователь может выбрать для себя тот, который покажется наиболее удобным и быстрым.

    Изменение формата ячеек в Excel

    Формат ячеек в Microsoft Excel

    Формат ячейки в программе Эксель задает не просто внешний вид отображения данных, но и указывает самой программе, как именно их следует обрабатывать: как текст, как числа, как дату и т.д. Поэтому очень важно правильно установить данную характеристику диапазона, в который будут вноситься данные. В обратном случае, все вычисления будут просто некорректными. Давайте выясним, как изменить формат ячеек в Microsoft Excel.

    Основные виды форматирования и их изменение

    Сразу определим, какие форматы ячеек существуют. Программа предлагает выбрать один из следующих основных видов форматирования:

    • Общий;
    • Денежный;
    • Числовой;
    • Финансовый;
    • Текстовый;
    • Дата;
    • Время;
    • Дробный;
    • Процентный;
    • Дополнительный.

    Кроме того, существует разделение на более мелкие структурные единицы вышеуказанных вариантов. Например, форматы даты и времени имеют несколько подвидов (ДД.ММ.ГГ., ДД.месяц.ГГ, ДД.М, Ч.ММ PM, ЧЧ.ММ и др.).

    Изменить форматирование ячеек в Excel можно сразу несколькими способами. О них мы подробно поговорим ниже.

    Способ 1: контекстное меню

    Самый популярный способ изменения форматов диапазона данных – это использование контекстного меню.

      Выделяем ячейки, которые нужно соответствующим образом отформатировать. Выполняем клик правой кнопкой мыши. Вследствие этого открывается контекстный список действий. Нужно остановить выбор на пункте «Формат ячеек…».

    Переход к формату ячеек в Microsoft Excel

    Изменение формата ячеек в Microsoft Excel

    После этих действий формат ячеек изменен.

    Способ 2: блок инструментов «Число» на ленте

    Форматирование также можно изменить, используя инструменты, находящиеся на ленте. Этот способ выполняется даже быстрее предыдущего.

      Переходим во вкладку «Главная». При этом, нужно выделить соответствующие ячейки на листе, а в блоке настроек «Число» на ленте открыть поле выбора.

    Переход к изменению формата ячеек на ленте в Microsoft Excel

    Выбор формата ячеек на ленте в Microsoft Excel

    Переход к другим числовым форматам в Microsoft Excel

    Окно формата ячеек в Microsoft Excel

    Способ 3: блок инструментов «Ячейки»

    Ещё одним вариантом настройки данной характеристики диапазона является использования инструмента в блоке настроек «Ячейки».

      Выделяем диапазон на листе, который следует отформатировать. Располагаясь во вкладке «Главная», кликаем по значку «Формат», который находится в группе инструментов «Ячейки». В открывшемся списке действий выбираем пункт «Формат ячеек…».

    Переход из ленты к форматированию ячеек в Microsoft Excel

    Способ 4: горячие клавиши

    И наконец, окно форматирования диапазона можно вызвать при помощи так называемых горячих клавиш. Для этого нужно предварительно выделить изменяемую область на листе, а затем набрать на клавиатуре комбинацию Ctrl+1. После этого, откроется стандартное окно форматирования. Изменяем характеристики так же, как об этом было уже сказано выше.

    Окно формата ячеек в Microsoft Excel

    Кроме того, отдельные комбинации горячих клавиш позволяют менять формат ячеек после выделения диапазона даже без вызова специального окна:

    • Ctrl+Shift+- — общий формат;
    • Ctrl+Shift+1 — числа с разделителем;
    • Ctrl+Shift+2 — времени (часы.минуты);
    • Ctrl+Shift+3 — даты (ДД.ММ.ГГ);
    • Ctrl+Shift+4 – денежный;
    • Ctrl+Shift+5 – процентный;
    • Ctrl+Shift+6 — формат О.ООЕ+00.

    Как видим, существует сразу несколько способов отформатировать области листа Excel. Эту процедуру можно совершить, воспользовавшись инструментами на ленте, вызовом окна форматирования или горячими клавишами. Каждый пользователь сам решает, какой вариант для него является наиболее удобным в решении конкретно поставленных задач, ведь в одних случаях достаточно применения общих форматов, а в других — требуется точное указание характеристик по подвидам.

    ЗакрытьМы рады, что смогли помочь Вам в решении проблемы.

Обычно при обновлении ячейки новым содержимым предыдущее значение будет закрыто, если не отменить операцию в Excel. Однако, если вы хотите сохранить предыдущее значение для сравнения с обновленным, сохранение предыдущего значения ячейки в другую ячейку или в комментарий к ячейке будет хорошим выбором. Метод, описанный в этой статье, поможет вам в этом.

Сохранить предыдущее значение ячейки с кодом VBA в Excel


Сохранить предыдущее значение ячейки с кодом VBA в Excel

Предположим, у вас есть таблица, как показано на скриншоте ниже. Если какая-либо ячейка в столбце C изменилась, вы хотите сохранить ее предыдущее значение в соответствующей ячейке столбца G или автоматически сохранить в комментарии. Для этого сделайте следующее.

1. На рабочем листе содержится значение, которое вы сохраните при обновлении, щелкните правой кнопкой мыши вкладку листа и выберите Просмотреть код из контекстного меню. Смотрите скриншот:

2. В дебюте Microsoft Visual Basic для приложений Скопируйте приведенный ниже код VBA в окно кода.

Следующий код VBA помогает сохранить предыдущее значение ячейки указанного столбца в другой столбец.

Код VBA: сохранить предыдущее значение ячейки в другую ячейку столбца

Dim xRg As Range
Dim xChangeRg As Range
Dim xDependRg As Range
Dim xDic As New Dictionary
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim I As Long
    Dim xCell As Range
    Dim xDCell As Range
    Dim xHeader As String
    Dim xCommText As String
    On Error Resume Next
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    xHeader = "Previous value :"
    x = xDic.Keys
    For I = 0 To UBound(xDic.Keys)
        Set xCell = Range(xDic.Keys(I))
        Set xDCell = Cells(xCell.Row, 7)
        xDCell.Value = ""
        xDCell.Value = xDic.Items(I)
    Next
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim I, J As Long
    Dim xRgArea As Range
    On Error GoTo Label1
    If Target.Count > 1 Then Exit Sub
    Application.EnableEvents = False
    Set xDependRg = Target.Dependents
    If xDependRg Is Nothing Then GoTo Label1
    If Not xDependRg Is Nothing Then
        Set xDependRg = Intersect(xDependRg, Range("C:C"))
    End If
Label1:
    Set xRg = Intersect(Target, Range("C:C"))
    If (Not xRg Is Nothing) And (Not xDependRg Is Nothing) Then
        Set xChangeRg = Union(xRg, xDependRg)
    ElseIf (xRg Is Nothing) And (Not xDependRg Is Nothing) Then
        Set xChangeRg = xDependRg
    ElseIf (Not xRg Is Nothing) And (xDependRg Is Nothing) Then
        Set xChangeRg = xRg
    Else
        Application.EnableEvents = True
        Exit Sub
    End If
    xDic.RemoveAll
    For I = 1 To xChangeRg.Areas.Count
        Set xRgArea = xChangeRg.Areas(I)
        For J = 1 To xRgArea.Count
            xDic.Add xRgArea(J).Address, xRgArea(J).Formula
        Next
    Next
    Set xChangeRg = Nothing
    Set xRg = Nothing
    Set xDependRg = Nothing
    Application.EnableEvents = True
End Sub

Чтобы сохранить предыдущее значение ячейки в комментарии, примените приведенный ниже код VBA.

Код VBA: сохранить предыдущее значение ячейки в комментарии

Dim xRg As Range
Dim xChangeRg As Range
Dim xDependRg As Range
Dim xDic As New Dictionary
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim I As Long
    Dim xCell As Range
    Dim xHeader As String
    Dim xCommText As String
    On Error Resume Next
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    xHeader = "Previous value :"
    For I = 0 To UBound(xDic.Keys)
        Set xCell = Range(xDic.Keys(I))
        If Not xCell.Comment Is Nothing Then xCell.Comment.Delete
        With xCell
            .AddComment
            .Comment.Visible = False
            .Comment.Text xHeader & vbCrLf & xDic.Items(I)
        End With
    Next
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim I, J As Long
    Dim xRgArea As Range
    On Error GoTo Label1
    If Target.Count > 1 Then Exit Sub
    Application.EnableEvents = False
    Set xDependRg = Target.Dependents
    If xDependRg Is Nothing Then GoTo Label1
    If Not xDependRg Is Nothing Then
        Set xDependRg = Intersect(xDependRg, Range("C:C"))
    End If
Label1:
    Set xRg = Intersect(Target, Range("C:C"))
    If (Not xRg Is Nothing) And (Not xDependRg Is Nothing) Then
        Set xChangeRg = Union(xRg, xDependRg)
    ElseIf (xRg Is Nothing) And (Not xDependRg Is Nothing) Then
        Set xChangeRg = xDependRg
    ElseIf (Not xRg Is Nothing) And (xDependRg Is Nothing) Then
        Set xChangeRg = xRg
    Else
        Application.EnableEvents = True
        Exit Sub
    End If
    xDic.RemoveAll
    For I = 1 To xChangeRg.Areas.Count
        Set xRgArea = xChangeRg.Areas(I)
        For J = 1 To xRgArea.Count
            xDic.Add xRgArea(J).Address, xRgArea(J).Text
        Next
    Next
    Set xChangeRg = Nothing
    Set xRg = Nothing
    Set xDependRg = Nothing
    Application.EnableEvents = True
End Sub

Внимание: В коде цифра 7 указывает столбец G, в который вы сохраните предыдущую ячейку, а C: C — столбец, в котором вы сохраните предыдущее значение ячейки. Пожалуйста, измените их в соответствии с вашими потребностями.

3. Нажмите Tools
> Рекомендации для открытия Ссылки — VBAProject диалоговое окно, проверьте Среда выполнения сценариев Microsoft поле и, наконец, щелкните OK кнопка. Смотрите скриншот:

4. нажмите другой + Q ключи, чтобы закрыть Microsoft Visual Basic для приложений окно.

С этого момента, когда значение ячейки в столбце C обновляется, предыдущее значение ячейки будет сохранено в соответствующие ячейки в столбце G или будет сохранено в комментариях, как показано на скриншотах ниже.

Сохраните предыдущие значения ячеек в других ячейках:

Сохраните предыдущие значения ячеек в комментариях:


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (20)


Оценок пока нет. Оцените первым!

Запуск макроса (процедуры) из кода VBA Excel при изменении значения ячейки вручную или программным способом, а также при нажатии клавиши Delete.

Запуск макроса при изменении ячейки

Пример кода

Код VBA Excel для запуска макроса (процедуры) при изменении значения ячейки на рабочем листе:

Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Application.Intersect(Range(«A1:D8»), Range(Target.Address)) Is Nothing Then

        MsgBox «Значение ячейки « & Target.Address & » изменено.»

    End If

End Sub

Range("A1:D8") — это диапазон, при изменении значения любой ячейки которого, произойдет выполнение функции MsgBox. Диапазон может состоять из одной ячейки.

Код размещается в модуле рабочего листа, при изменении значения ячейки на котором следует запустить макрос (процедуру).

Вместо функции MsgBox в приведенном коде следует разместить ссылку на исполняемую процедуру (макрос) VBA Excel.

Примечания

  • Макрос будет запущен при изменении значения ячейки вручную или программным способом, а также при нажатии клавиши Delete.
  • Вызываемая процедура будет запущена и в том случае, если в ячейку будет записано то же самое значение, которое в ней и было. Например, в ячейке было число 28, и в нее записали вручную или программно число 28; или нажали клавишу Delete на пустой ячейке.
  • Макрос не будет запущен при изменении значения ячейки с формулой в результате ее пересчета.

Исключение ложного срабатывания

Если в качестве диапазона указать только одну ячейку, можно исключить срабатывание кода VBA Excel при записи в ячейку того же значения. Для этого необходимо использовать переменную уровня модуля, чтобы с ее помощью контролировать факт изменения или неизменения значения в указанной ячейке.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

Option Explicit

Dim x

Private Sub Worksheet_Activate()

x = Range(«C4»)

End Sub

Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Application.Intersect(Range(«A1:D8»), Range(Target.Address)) Is Nothing _

    And x <> Range(«C4») Then

        MyMsgBox

        x = Range(«C4»)

    End If

End Sub

Private Sub MyMsgBox()

    MsgBox «Значение ячейки « & «C4» & » изменено на « & Chr(34) & Range(«C4») & Chr(34)

End Sub

В это примере функция MsgBox вынесена в отдельную процедуру, которая вызывается при изменении значения в ячейке C4.

Значение ячейки C4 присваивается переменной x при активации рабочего листа и, затем, перезаписывается при каждой перезаписи значения в ячейке.

Код этого примера размещен в модуле рабочего листа, но код вызываемой процедуры может быть вынесен из него в другой модуль.


На чтение 6 мин. Просмотров 6k.

Итог: узнайте, как предотвратить или отключить изменение размеров столбцов в сводной таблице при обновлении, изменении или фильтрации.

Уровень мастерства: Начинающий

How to Prevent Columns from Resizing in Pivot Table

Обычно, когда мы вносим какие-либо изменения или обновления в сводную таблицу, ширина столбцов автоматически изменяется, чтобы подогнать содержимое каждой ячейки в сводной таблице.

«Обновление» включает в себя практически каждое действие, которое мы выполняем в сводной таблице, включая: добавление/удаление полей, обновление, фильтрацию с помощью выпадающего меню или среза, изменения макета и т.д. Функция автоподбора изменяет размер столбца до ширины самой широкой ячейки (с наибольшим содержанием) в каждом столбце.

Это раздражает! Особенно, когда лист содержит данные в других ячейках за пределами сводной таблицы или любых фигур (диаграммы, срезы, фигуры и т.д.).

Содержание

  1. Отключить автоподбор ширины столбца при обновлении
  2. Ярлык для автоматической подгонки ширины столбцов вручную
  3. Изменить настройки сводной таблицы по умолчанию
  4. Макрос для отключения автозаполнения столбцов на всех сводных таблицах
  5. Обратите внимание, что макросы будут работать во всех версиях Excel.
  6. Дополнительные материалы по сводным таблицам и макросам

Отключить автоподбор ширины столбца при обновлении

К счастью, есть быстрое решение. В сводной таблице есть настройка, которая позволяет нам включать/выключать эту функцию.

Вот шаги, чтобы отключить автозаполнение по ширине столбца при обновлении:

  1. Щелкните правой кнопкой мыши ячейку внутри
    сводной таблицы.
  2. Выберите «Параметры сводной таблицы…» в меню.
  3. На вкладке «Макет и формат» снимите флажок
    «Автоподбор по ширине столбца при обновлении».
  4. Нажмите ОК

Excel Pivot Table Options Right-Click Menu

Turn off Autofit column widths on update on 2nd pivot table

Размер столбцов НЕ будет автоматически изменяться при
внесении изменений в сводную таблицу.

Я писал об этом в своем посте о том, как создать окно поиска для слайсера.

Ярлык для автоматической подгонки ширины столбцов вручную

Иногда бывают случаи, когда необходимо изменить размер столбцов после изменения сводной таблице. Если функция автоподбора по ширине отключена, сделать это довольно быстро помогут несколько сочетаний клавиш.

Убедитесь, что в сводной таблице выбрана ячейка, а затем нажмите следующие клавиши.

  1. Ctrl + A, чтобы выбрать диапазон сводной таблицы.
  2. Alt, h, o, i для ширины столбца.

AutoFit Column Widths Pivot Table Keyboard Shortcut

Эта комбинация клавиш изменяет размеры столбцов только для содержимого ячеек сводной таблицы.

Если вы хотите включить содержимое ячейки за пределы сводной таблицы, нажмите Ctrl + Пробел после Ctrl + A. Ctrl + Space — это сочетание клавиш для выбора всего столбца.

Изменить настройки сводной таблицы по умолчанию

В последней версии Excel 2016 можно изменить настройки по умолчанию для большинства параметров сводной таблицы. Это означает, что мы можем отключить ширину столбца Autofit при обновлении для всех новых сводных таблиц, которые мы создаем. Это избавит нас от необходимости вручную изменять этот параметр при каждом создании сводной таблицы в будущем.

Вот шаги, чтобы изменить настройки сводной таблицы по умолчанию. Это относится только к Excel 2016 (Office 365).

  1. Перейдите в Файл > Параметры.
  2. Выберите меню данных на левой боковой панели.
  3. Нажмите кнопку Изменить макет по умолчанию.
  4. Нажмите кнопку Параметры сводной таблицы….
  5. Снимите флажок Ширина столбца автозаполнения при обновлении.
  6. Нажмите OK 3 раза, чтобы сохранить и закрыть меню параметров Excel.

Excel Options Pivot Table Layout Excel 2016

Pivot Table Options - Edit Default Layout in Excel

Настройки по умолчанию будут применяться ко всем НОВЫМ сводным таблицам, которые вы создаете. Я сделаю следующий пост, где более подробно объясню эту новую функцию настроек по умолчанию. Опять же, он доступен только в последней версии Excel 2016 (текущий канал Office 365).

Если вы подписаны на Office 365 ProPlus, то, возможно, вы находитесь на Отложенном канале, в котором еще нет этого обновления. Вот статья о том, как переключить текущий канал.

Макрос для отключения автозаполнения столбцов на всех сводных таблицах

Если в вашей книге уже много сводных таблиц, и вы хотите отключить автозаполнение для всех сводных таблиц, тогда мы можем использовать макрос.

Вот макрос VBA, который отключает настройку ширины столбца Autofit во всех сводных таблицах в книге. Макрос проходит по всем рабочим листам в рабочей книге и всем сводным таблицам на каждом рабочем листе, чтобы отключить настройку. Вы также можете использовать его, чтобы снова включить параметр, изменив свойство HasAutoFormat на True.

Sub Autofit_Column_Width_All_Pivots()
' Отключить автоподбор ширины столбца при обновлении
' на всех сводных таблицах в активной рабочей книге.

Dim ws As Worksheet
Dim pt As PivotTable

  ' Цикл каждого листа в активной рабочей тетради
  For Each ws In ActiveWorkbook.Worksheets
  
    ' Проходить по каждой сводной таблице на листе
    For Each pt In ws.PivotTables
    
      ' Автоподбор ширины столбца при обновлении
      ' изменить на True, чтобы включить
      pt.HasAutoFormat = False
    
    Next pt
  Next ws

End Sub

Макрос можно скопировать и вставить в модуль кода в вашей личной книге макросов и использовать в любой открытой книге.

Ознакомьтесь с моей бесплатной серией видео в Персональной книге макросов, чтобы узнать больше.

Также ознакомьтесь с моей статьей For Loop для подробного объяснения того, как эти типы циклов работают в VBA.

Обратите внимание, что макросы будут работать во всех версиях Excel.

Макрос для вывода списка столбцов автозаполнения для всех сводных таблиц. Вот макрос, который выведет текущее значение параметра ширины столбца «Автозаполнение» для всех сводных таблиц в книге. Строка Debug.Print выводит результаты в окно Immediate в редакторе VB.

Sub List_Pivot_Autofit_Setting()
' Создать список текущей ширины столбца автозаполнения 
' настройка для каждой сводной таблицы в активной книге. 
' Список распечатывается в непосредственном окне (Ctrl + G)

Dim ws As Worksheet
Dim pt As PivotTable

    For Each ws In ActiveWorkbook.Worksheets
        For Each pt In ws.PivotTables
            Debug.Print pt.HasAutoFormat & " | " & ws.Name & " | " & pt.Name  
        Next pt
    Next ws

End Sub

Структура вывода:

Значение HasAutoFormat | Имя рабочего листа | Имя сводной
таблицы

Значение HasAutoFormat будет True, если настройка включена,
и False, если настройка выключена.

Output of the macro to list pivot table autofit setting

Дополнительные материалы по сводным таблицам и макросам

  • Как работают сводные таблицы?
  • Введение в сводные таблицы и панели инструментов [Видео 1 из 3]
  • Как добавить окно поиска в слайсер для быстрой фильтрации сводных таблиц и диаграмм + видео
  • 5 способов использовать VBA Immediate Window в Excel
  • Циклы For Next и For Each для VBA и Excel
  • Бесплатные видеоматериалы о начале работы с макросами и VBA

Я надеюсь, что это поможет сэкономить время, и изменение размера столбцов сводной таблицы не будет приносить разочарование.

Пожалуйста, оставьте комментарий ниже с любыми вопросами или другими советами, которые у вас есть по этому вопросу. Спасибо!

Понравилась статья? Поделить с друзьями:
  • Excel при нажатии на ячейку выделяется несколько ячеек
  • Excel при нажатии на ячейку всплывает таблица
  • Excel при нажатии на ячейку всплывает картинка
  • Excel при нажатии на стрелки двигается экран
  • Excel при нажатии на картинку открывается