Всем привет! Пишу небольшой макрос, буду предельно благодарна за помощь. с VBA не работала уже лет 5, поэтому тяжеловато идет) Задача - настроить программу, отслеживающую кол-во проведенного времени человеком в развлекательном зале + ведение статистики. Подразумевается несколько абонементов. Уже написала, чтоб при открытии запускалось текущее время и при изменении значения ячейки " время абонемента" автоматом считалось время окончания абонемента и при его (время окончания) наступлении статус становился красного цвета. Корявенько, правда, но работает Что еще нужно: при закрытии книги переносить данные из диапазона на листе "сегодня" С5:F (последняя заполненная ячейка) на лист "статистика" в столбец B в первую незаполненную ячейку. Еще есть косяк в процедуре изменения ячейки. Если ее через del удалить, то выводит ошибку, как исправить пока тоже не придумала. скрин тоже ниже
Помогите, люди, пожалуйста. Там немного осталось)
Файл ниже
Всем привет! Пишу небольшой макрос, буду предельно благодарна за помощь. с VBA не работала уже лет 5, поэтому тяжеловато идет) Задача - настроить программу, отслеживающую кол-во проведенного времени человеком в развлекательном зале + ведение статистики. Подразумевается несколько абонементов. Уже написала, чтоб при открытии запускалось текущее время и при изменении значения ячейки " время абонемента" автоматом считалось время окончания абонемента и при его (время окончания) наступлении статус становился красного цвета. Корявенько, правда, но работает Что еще нужно: при закрытии книги переносить данные из диапазона на листе "сегодня" С5:F (последняя заполненная ячейка) на лист "статистика" в столбец B в первую незаполненную ячейку. Еще есть косяк в процедуре изменения ячейки. Если ее через del удалить, то выводит ошибку, как исправить пока тоже не придумала. скрин тоже ниже
Alexa6ka, Добавил копирование перед закрытием [vba]
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean) On Error Resume Next Application.OnTime nextTime, "tik", , False arr = Лист1.Range("C5", "F" & Лист1.Range("C5").End(xlDown).Row).Value ad = Лист2.Range("B100000").End(xlUp).Row Лист2.Range("B" & ad + 1, "E" & ad + UBound(arr)).Value = arr End Sub
[/vba] Ошибку повторить не удалось
Alexa6ka, Добавил копирование перед закрытием [vba]
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean) On Error Resume Next Application.OnTime nextTime, "tik", , False arr = Лист1.Range("C5", "F" & Лист1.Range("C5").End(xlDown).Row).Value ad = Лист2.Range("B100000").End(xlUp).Row Лист2.Range("B" & ad + 1, "E" & ad + UBound(arr)).Value = arr End Sub
miver, отлично,спасибо большое! )) копирует все верно, НО! при каждом последующем открытии книги, он перезаписывает данные на листе "Статистика", а должен продолжать таблицу. По ошибке сейчас она при запуске книги выходит, так как поставила автоочистку ячеек на листе "сегодня".
miver, отлично,спасибо большое! )) копирует все верно, НО! при каждом последующем открытии книги, он перезаписывает данные на листе "Статистика", а должен продолжать таблицу. По ошибке сейчас она при запуске книги выходит, так как поставила автоочистку ячеек на листе "сегодня".Alexa6ka