Вітаю! Допоможіть розібратися в чому проблема або підкажіть як це реалізувати правильно. Потрібно виводити повідомлення, після проходження певного часу від зазначеного в осередку.
Наприклад: вводимо 11:30 в осередку А1, через 30 хвилин від зазначеного часу (тобто в 12) з'являється повідомлення, після через годину від зазначеного часом (12:30) інше повідомлення і т.п.
У програмуванні для Excel і VBA не сильний, але зміг спорудити такий примітивний макрос, який висновок повідомлення, правда воно виводиться кожен раз по 2 рази, а як зробити щоб повідомлення відображалося лише 1 раз, зрозуміти не можу.
заданий 30 Квітня '15 в 7:01
Щось ніяк зрозуміти не можу. Опис поведінки є лише в прикладі:
Наприклад: вводимо 11:30 в осередку А1, через 30 хвилин від зазначеного часу (тобто в 12) з'являється повідомлення, після через годину від зазначеного часом (12:30) інше повідомлення і т.п.
І по ньому процедуру нагадування необхідно виконати 2 рази. Далі, ви, в наведеному лістингу домоглися цього, але не подобається те, що нагадування виконується 2 рази. Так що треба?
Якщо друге нагадування має спрацьовувати тільки в деяких (поки не зрозумілих) ситуаціях, так обробляйте ці ситуації і ставте / прибирайте потрібний / непотрібний таймер.
Наприклад, якщо друге нагадування має спрацювати тільки в разі скасування першого, то виводите в першому діалог, по реакції користувача на який можна буде следать висновок, чи потрібен другий таймер. Тут вже або скасовувати раніше встановлений другий таймер, благо, функціонал є в тому ж Application.OnTime. Або ж, навпаки, спочатку встановлюйте тільки один таймер, і по реакції користувача на перший, при необхідності, запускайте другий таймер. По-моєму, другий варіант більш кращий.
відповідь дан 13 Листопада '15 о 7:55