Как обновить ячейку в excel автоматически

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

Формулы Excel не обновляются автоматически

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

  1. Расчет настроен на «Ручной»
  2. Ячейка отформатирована как текст
  3. Кнопка Показать формулы включена
  4. Пробел введен перед знаком равенства.

Давайте рассмотрим каждый из них в деталях.

1] Расчет настроен на «Ручной»

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

Запустите Excel, нажмите « Вкладка формул », а затем кнопку « Параметры расчета ». Теперь установите для параметра расчета значение Автоматический .

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

2] Ячейка отформатирована как текст .

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

Нажмите на ячейку и проверьте группу номеров на вкладке «Главная». Если отображается « Текст », измените его на « Общие », используя раскрывающееся меню.

Теперь пересчитайте формулу в ячейке, дважды щелкнув по ячейке и нажав « Ввод» .

3] Показать кнопку “Формулы” включено

Если кнопка « Показать формулы » на вкладке «Формулы» включена, формулы не работают. Это может быть сделано случайно пользователем или кем-то, кто ранее использовал эту книгу. Эта кнопка в основном используется при аудите формул, поэтому вместо конечного результата отображается формула. Тем не менее, эта вкладка очень полезна при устранении неполадок с глюками формулы.

Чтобы это исправить, просто нажмите кнопку Показать формулы и Отключите его .

4] Пробел введен перед знаком равенства

Последняя причина может заключаться в том, что при вводе формулы, если вы ошибочно вводите пробел перед «Равным (=)», следовательно, формула не будет рассчитываться. Эту ошибку очень трудно заметить, поэтому очень часто она остается незамеченной.

Проверьте, есть ли пробел, дважды щелкнув по ячейке, если это так, удалите ее, и формула обновится.

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

 

Уважаемые знатоки. Вот столкнулся с такой проблемой.  

  Значение ячейки А1 на Листе1 зависит от значения ячейки В2 на Листе2. Вот если поменять значение В2 а потом перейти на лист1 то ячейка А1 не обновляется. И что бы обновить данные нужно кликнуть 2 раза по ячейке А1 и нажать на Enter. Может можно написать код который бы обновлял все формулы на листе. Подскажите, как можно решить данную проблему.  

  Заранее огромное спасибо!

 

New

Пользователь

Сообщений: 4582
Регистрация: 06.01.2013

А версия Excel какая? Пересчёт какой стоит? Если ручной, то поставьте Автоматический.    
В Excel 2003 — Сервис — Параметры — Вычисления — Автоматически

 

New

Пользователь

Сообщений: 4582
Регистрация: 06.01.2013

Если Excel 2010 — вкладка Формулы — (справа вверху) Параметры вычисления — выбрать Автоматически

 

R Dmitry

Пользователь

Сообщений: 3103
Регистрация: 22.12.2012

Excel,MSSQL,Oracle,Qlik

#4

12.09.2010 00:35:04

{quote}{login=Makintosh}{date=12.09.2010 12:25}{thema=Не обновляются автоматически данные}{post}Уважаемые знатоки. Вот столкнулся с такой проблемой.  

  Значение ячейки А1 на Листе1 зависит от значения ячейки В2 на Листе2. Вот если поменять значение В2 а потом перейти на лист1 то ячейка А1 не обновляется. И что бы обновить данные нужно кликнуть 2 раза по ячейке А1 и нажать на Enter. Может можно написать код который бы обновлял все формулы на листе. Подскажите, как можно решить данную проблему.  

  Заранее огромное спасибо!{/post}{/quote}  
может стоит включить автоматическое вычисления?

Спасибо

 

New

Пользователь

Сообщений: 4582
Регистрация: 06.01.2013

Можно это сделать макросом    

  Application.Calculation = xlCalculationAutomatic

 

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

 

New

Пользователь

Сообщений: 4582
Регистрация: 06.01.2013

А у вас в написанных функциях есть строка ?  

  Application.Volatile

 

{quote}{login=Pavel55}{date=12.09.2010 12:39}{thema=}{post}А у вас в написанных функциях есть строка ?  

  Application.Volatile{/post}{/quote}  

  Нет, такой строки нету.

 

R Dmitry

Пользователь

Сообщений: 3103
Регистрация: 22.12.2012

Excel,MSSQL,Oracle,Qlik

#9

12.09.2010 00:48:32

{quote}{login=Makintosh}{date=12.09.2010 12:42}{thema=Re: }{post}{quote}{login=Pavel55}{date=12.09.2010 12:39}{thema=}{post}А у вас в написанных функциях есть строка ?  

  Application.Volatile{/post}{/quote}  

  Нет, такой строки нету.{/post}{/quote}  

  Function нннннн()  
   Application.Volatile True    
   …  
   …  
   …  
   myFunction=…  
End Function

Спасибо

 

New

Пользователь

Сообщений: 4582
Регистрация: 06.01.2013

А вы попробуйте добавьте её сразу первой строкой под названием функции, вот так  

  Function МояСуперФункция()  
Application.Volatile  

  ‘ля-ля-ля  
‘ля-ля-ля  

  End Function  

  вдруг поможет

 

Ребята, вы просто мозги. Всё помогло. Добавил строчку Application.Volatile и всё хорошо стало.

 

New

Пользователь

Сообщений: 4582
Регистрация: 06.01.2013

#12

12.09.2010 00:57:41

Мы такие )) Только учтите, что написав эту строку в вашей функции, ваша функция стала «летучей», т.е. она теперь всегда будет пересчитываться при любом изменении на листе, в книге, в другой открытой книги, т.е. при любом телодвижении (кроме изменения цвета фона ячейки). И соответственно, если ваша функции медлительная, то это будет сказываться на быстроте работы всего Excel

У меня есть ячейка в моем листе Excel, и мне нужно, чтобы эта ячейка обновлялась каждые 5 секунд.

Сам MS Excel позволяет установить обновление, но оно происходит только раз в 1 минуту, что недостаточно долго.

Мне нужен код в VBA или набор макросов, который запускается каждые 5 секунд, и делаю именно то, что было бы сделано, если бы я нажимал «Обновить» каждые 5 секунд, как показано здесь:

Refresh

Как-то я не нашел ни одного примера того, что я совершенно не понимаю, как это сделать, поскольку я не знаю, как работать в VBA ..

3 ответа

Лучший ответ

Понял, теперь работает:

Sub UpdateCell()
    ActiveWorkbook.RefreshAll
    Application.OnTime Now + TimeValue("00:00:5"), "List1.UpdateCell"
End Sub


-1

Totallama
23 Окт 2016 в 05:35

Вы можете использовать Application.OnTime для планирования автоматического обновления. Создайте следующую подпрограмму VBA и выполните. Он будет автоматически вычислять ячейку A1 каждые 5 секунд.

Sub UpdateCell()
    ActiveWorkbook.RefreshAll
    Application.OnTime Now + TimeValue("00:00:5"), "UpdateCell"
End Sub


1

AlbertLau14100
23 Окт 2016 в 04:05

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

Вот как обновлять (вычислять) ячейку A1 каждые 5 секунд.

 Sub Calculate_Range()    
   Range("G3").Calculate    
   Application.OnTime DateAdd("s", 5, Now), "Calculate_Range"    
 End Sub


1

Gary Carlyle Cook
5 Дек 2019 в 03:20

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2013 Еще…Меньше

Вы можете в любой момент нажать кнопку Обновить, чтобы обновить данные в сводных таблицах в книге. Вы можете обновить данные для сводных таблиц, импортированных из Power Query, таких как база данных (SQL Server, Oracle, Access и т. д.), куб служб Analysis Services, веб-канал данных и многие другие источники. Можно также обновить данные из таблицы Excel,которая автоматически включает все изменения внешнего источника данных.

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

  1. Щелкните любое место сводной таблицы. На ленте появится вкладка Работа со сводными таблицами.

    Работа со сводными таблицами

  2. На вкладке Анализ выберите команду Обновить или нажмите ALT+F5.

    Изображение ленты Excel

    Совет: Вы также можете обновить сводную таблицу, щелкнув ее правой кнопкой мыши и выбрав команду «Обновить».

  3. Чтобы обновить сразу все сводные таблицы в книге, на вкладке Анализ щелкните стрелку рядом с кнопкой Обновить и выберите пункт Обновить все.

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

Чтобы отменить обновление, нажмите Отменить обновление.

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

  1. На вкладке Анализ нажмите кнопку Параметры.

    Кнопка "Параметры" на вкладке "Анализ"

  2. На вкладке Макет и формат установите флажки Автоматически изменять ширину столбцов при обновлении и Сохранять форматирование ячеек при обновлении.

  1. Щелкните любое место сводной таблицы. На ленте появится вкладка Работа со сводными таблицами.

    Работа со сводными таблицами

  2. На вкладке Анализ нажмите кнопку Параметры.

    Кнопка "Параметры" на вкладке "Анализ"

  3. На вкладке « Данные» проверьте данные обновления при открытии файла .

  1. Щелкните любое место сводной таблицы. На ленте появится вкладка Работа со сводными таблицами.

    Работа со сводными таблицами

  2. На вкладке Анализ выберите команду Обновить или нажмите ALT+F5.

    Изображение ленты Excel

    Совет: Вы также можете обновить сводную таблицу, щелкнув ее правой кнопкой мыши и выбрав команду «Обновить».

  3. Чтобы обновить сразу все сводные таблицы в книге, на вкладке Анализ щелкните стрелку рядом с кнопкой Обновить и выберите пункт Обновить все.

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

Чтобы отменить обновление, нажмите Отменить обновление.

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

  1. На вкладке Анализ нажмите кнопку Параметры.

    Кнопка "Параметры" на вкладке "Анализ"

  2. На вкладке Макет и формат установите флажки Автоматически изменять ширину столбцов при обновлении и Сохранять форматирование ячеек при обновлении.

  1. Щелкните любое место сводной таблицы. На ленте появится вкладка Работа со сводными таблицами.

    Работа со сводными таблицами

  2. На вкладке Анализ нажмите кнопку Параметры.

    Кнопка "Параметры" на вкладке "Анализ"

  3. На вкладке « Данные» проверьте данные обновления при открытии файла .

  1. Щелкните любое место сводной таблицы. На ленте появится вкладка Работа со сводными таблицами.

    Работа со сводными таблицами

  2. На вкладке Анализ выберите команду Обновить или нажмите ALT+F5.

    Изображение ленты Excel

    Совет: Вы также можете обновить сводную таблицу, щелкнув ее правой кнопкой мыши и выбрав команду «Обновить».

  3. Чтобы обновить сразу все сводные таблицы в книге, на вкладке Анализ щелкните стрелку рядом с кнопкой Обновить и выберите пункт Обновить все.

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

Чтобы отменить обновление, нажмите Отменить обновление.

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

  1. На вкладке Анализ нажмите кнопку Параметры.

    Кнопка "Параметры" на вкладке "Анализ"

  2. На вкладке Макет и формат установите флажки Автоматически изменять ширину столбцов при обновлении и Сохранять форматирование ячеек при обновлении.

  1. Щелкните любое место сводной таблицы. На ленте появится вкладка Работа со сводными таблицами.

    Работа со сводными таблицами

  2. На вкладке Анализ нажмите кнопку Параметры.

    Кнопка "Параметры" на вкладке "Анализ"

  3. На вкладке « Данные» проверьте данные обновления при открытии файла .

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Нужна дополнительная помощь?

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

Вам нужно будет включить макросы и сохранить файл Excel как файл с поддержкой макросов, .XLSM, чтобы использовать код. Чтобы сохранить файл как файл с поддержкой макросов, выберите «Файл»> «Сохранить как» и выберите «Книга с поддержкой макросов Excel» в диалоговом окне «Сохранить как».

Затем выберите лист, к которому вы применили фильтры. Щелкните его правой кнопкой мыши и выберите в контекстном меню «Просмотреть код».

Откроется окно Microsoft Visual Basic с текущим листом Excel. Вставьте следующий код в окно кода.

Private Sub Worksheet_Change(ByVal Target As Range)
If Me.FilterMode = True Then
With Application
.EnableEvents = False
.ScreenUpdating = False
End With

With ActiveWorkbook
.CustomViews.Add ViewName:="Mine", RowColSettings:=True
Me.AutoFilterMode = False
.CustomViews("Mine").Show
.CustomViews("Mine").Delete
End With
With Application
.EnableEvents = True
.ScreenUpdating = True
End With
End If

End Sub

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

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

Что вы думаете об этой статье?

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Как обозначается word документ
  • Как обновить ячейки в excel после смены формата
  • Как обновить значение формул в excel
  • Как обозначается enter в word
  • Как обновить экран в excel

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии