В этой статье показано, как регулярно обновлять лист или диаграмму. В этом упражнении создается таймер, который обновляет лист каждую минуту, отражая изменения в исходных данных.
В этой статье предполагается, что у читателя отображается лента «Разработчик» и он знаком с редактором VBA. Если нет, погуглите «Excel Developer Tab» или «Excel Code Window».
Пример рабочей тетради, используемой в этом упражнении, можно найти здесь.
Использование динамической отчетности может быть:
- Чтение приличияtar• база данных, поставляемая с телефонной системой вашей компании, для анализа звонков.
- Генерируйте случайное число каждые 15 минут для получения приза или розыгрыша.
- Автоматическая отправка электронных писем из вашей локальной базы данных при достижении определенных уровней. (здесь таймер будет решать, запускать процесс или нет, в зависимости от достигнутых уровней).
или тот, который мы будем использовать:
- Отображение последнего обменного курса доллара США к евро из Интернета.
Данные извлекаются из веб-сайт Yahoo Финансы каждую минуту. После успешного тестирования следует заменить более длительный интервал обработки.
Интерфейс
Откройте новую книгу;
Назовите первый лист «Экран». Поскольку таблицы с D8 по E11 будут заполняться из Интернета, значения или заголовки строк вводить не нужно. Остальное необязательно.
Кодекс
Откройте окно кода VBA и вставьте модуль. Скопируйте приведенный ниже код в модуль.
Событие Auto_Opentarts Таймер при открытии рабочей книги и останавливается при закрытии рабочей книги, если код не прерывается разработчиком во время разработки.
Sub Auto_Open()
AlertTime = Now + TimeValue("00:01:00") 'interval in minutes
Application.OnTime AlertTime, "Ticker" 'call Sub Ticker, below
End Sub
Sub Ticker()
Dim currBuy As String
Dim currSell As String
Range("D8:F11").ClearContents 'prepare the destination for the web data
currBuy = "USD"
currSell = "EUR"
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://finance.yahoo.com/q?s=" & currBuy & currSell & "=X", Destination:=Range("$D$8"))
.Name = "q?s=" & currSell & currBuy & "=X"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = """table1"""
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
AlertTime = Now + TimeValue("00:01:00") ‘move trigger on a minute
Application.OnTime AlertTime, "Ticker"
End Sub
Результат
Каждые n минут таблица на листе Display будет обновляться с веб-сайта Yahoo. Обратитесь к веб-сайту Microsoft для более сложных подключений к данным.
Восстановление поврежденных книг
Известно, что Excel аварийно завершает работу в неожиданные моменты, вероятно, из-за нехватки ресурсов. В таких случаях исходный файл может быть безвозвратноcably повреждены и отказываются открываться повторно. При отсутствии частого резервного копирования инструмент для восстановления испорченный Excel файлы были бы неоценимы.
Об авторе:
Феликс Хукер — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая rar фиксировать и программные продукты для восстановления sql. Для получения дополнительной информации посетите www.datanumen.com

