Екцел - ВБА - Креирање подсетника

Екцел је често средство избора за манипулисање подацима, генерисање извештаја и графикона из различитих типова података. Међутим, Екцел такође може да користи и друге занимљиве ствари као што је прављење подсетника . Ово се може урадити помоћу ВБА оквира. Да бисте креирали подсетник, потребно је написати прилагођени ВБА код који користи неке од уграђених функционалности . Код, међутим, треба да се покрене ручно у првој инстанци и наставиће да се покреће за следеће итерације све док је радна свеска отворена. Ако корисник не жели ручно покретање кода, они морају дефинирати прилагођену рутину названу воркбоок_опен .

Питање

Желим да аутоматски добијем оквир за поруке подсетника, у складу са датумом и временом у радном листу програма Екцел.

Може ли се то урадити у ВБА?

Решење

 --- А -------------- Б -------- Ц ---------------------- Д 1- Датум ------- Време ------ Задатак ------------------- Подсети 2- 13/3/2010 - 11:10 ---- Чиста соба -------------- Кс 3- 13/3/2010 - 11:10 ---- Цлеан Цар ------------ ----- ИКС 

Кс: означава да је ово активни подсетник. Уклоните к да бисте онемогућили тај подсетник

На ВБЕ (АЛТ + Ф11) иу прозору пројекта екплорер, двапут кликните на "ТхисВоркбоок". Залијепите код испод.

 Привате Цонст подсјетник Ас Интегер = 1 Приватни подсјетникНект Ас Вариант Јавни суб подсјетник () цуррентТиме = Вријеме нектМин = ЦДате (Формат (Тиме + 1 / (24 * 60), "хх: мм")) мировс = Распон ("А1") .ЦуррентРегион.Ровс.Цоунт Фор тхисров = 2 То мировс Иф (Ћелије (тхисров, "Д") = "Кс") Затим тхистиме = ЦДате (ЦДате (ћелије (тхисров, "А")) + ћелије (тхисров, "Б") ")) Ако ((тхистиме> = Нов) И (тхистиме <= Сада + 1 * подсетник / (24 * 60))) Онда таск = таск & вбЦрЛф & Целлс (тхисров, " Ц ") &" ат "& Формат (Ћелије (тхисров, "Б"), "хх: мм") Енд Иф Енд Ако је Нект (задатак "") Онда МсгБок таск реминдерНект = Сада + ТимеСериал (0, подсетник, 0) Апплицатион.ОнТиме реминдерНект, "ТхисВоркбоок. подсјећам ", Труе Енд Суб 

Такође морате да разумете неколико ствари:

  • Код треба да се покрене ручно први пут. После тога, док не затворите књигу, она ће наставити да проверава распоред као што сте дефинисали у књизи.
  • Када затворите књигу и поново је покренете, поново морате покренути код.
  • Да бисте покренули код, потребно је да одете у Мацро, и тамо ћете наћи дугме за покретање на траци менија.
  • Ако не желите да ручно покренете код и желите да се код покреће самостално сваки пут када покренете књигу, онда морате дефинисати рутину под именом Воркбоок_Опен ()
  • Дакле, опет, ако желите ручно покренути код онда радите тачно онако како сте радили раније и ако желите да се код покреће самостално сваки пут када се књига отвори, онда морате додати још један (иако задржавате стари код ипак ). Код би био:

 Привате Суб Воркбоок_Опен () Позови подсјетник Енд Суб 

Белешка

Хвала ризвиса1 за овај тип на форуму.

Претходни Чланак Sledeći Чланак

Топ Савети