Господа, подскажите по экселю. Кто в VBA шарит.
В таблицу из терминалки идут данные. Идут в одну ячейку, а надо по ним построить график на 5мин.
Пока мысль такая — сделать шаблон для графика 60 ячеек на 1 день, а в куждую ячейку значение писать в опр. время.
Т.е. в 1-ю в 10:00, во 2-ю в 10:05, и т.д.
Допустим данные идут в A1.
Как должна выглядеть формула в ячейке для графика? Ну типа " if Time==«10:00:00» then A1.Data".
И макрос какой-то надо запустить для рефреша, наверное, подскажите в общем — не помню нихрена уже :))
9 |
Читайте на SMART-LAB:
⚡️ Мы там, где формируется будущее финтеха | ПСБ Финанс
Команда и генеральный директор ПАО «СТГ» Анна Калугина приняли участие в FINNEXT 2026 — главном форуме финансовых инноваций....
Почему люди с депозитом до 10 000 ₽ годами стоят на месте?
Не потому, что денег мало. Маленький счёт не тормозит. Он разоблачает. На таком депозите невозможно долго врать себе. Сразу видно, кто торгует по...
Коммерческая недвижимость в портфеле в 2026 году
В 2023–2025 году начинающие инвесторы получили особенно благоприятную почву для входа в рынок капитала через безрисковые инструменты, а опытные —...
Ваш любимый Мозговой штурм спешит на помощь! Мнение по текущему рынку простыми словами
В нашем рейтинге акций знаменательное событие! Рекордное число акций с рейтингом 4 — 14 штук!!!
И, вероятно, будет еще больше!
Сегодня я...
www.askit.ru/custom/vba_office/m3/03_09_05_datetime_finctions.htm
support.microsoft.com/ru-ru/kb/162150
Sub One_Min_Timer()
' время в секундах
time_1 = Now() + 60
Application.OnTime TimeValue(time_1), «CLEAR_1»
End Sub
Sub CLEAR_1()
On Error Resume Next
' Прерываем старый таймер, иначе будет включаться каждые сутки в то же самое время.
Application.OnTime EarliestTime:=TimeValue(time_1), Procedure:=«CLEAR_1», Schedule:=False
' тут производим нужные действия
' .................
' и снова вызываем таймер
Call One_Min_Timer
End Sub
Копируй как есть в какой-нибудь из модулей.
На выходе из Workbook надо остановить таймер
Это копируй в ThisWorkbook
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.OnTime EarliestTime:=TimeValue(time_1), Procedure:=«CLEAR_1», Schedule:=False
End Sub