Уметните временску ознаку датума са ВБА

Преглед садржаја

Уметање датума и времена у Екцел помоћу ВБА једноставно је као писање формуле у ћелију.

ВБА код временске ознаке је:

Опсег („А1“). Вредност = Формат (сада, "мм/дд/ггггг ХХ: мм: сс")

Овај код ће приказати тренутни датум и време у ћелији А1. И да, то је то. готово је.

Функција „Сада“ враћа тренутни датум и време, а функција „Обликовање“ форматира излаз у формат „мм/дд/гггг ХХ: мм: сс“.

Прикажите датум и време кад год се промени помоћу ВБА.

Рецимо да сте припремили лист. На овом листу желите да се време приказује у колони Б кад год неко унесе колону А.

Сада нам је потребан код временске ознаке ВБА који се покреће сваки пут када се изврши промена у колони А.

Код испод олакшава посао.

Покрени макро када се изврши промена (Руковалац догађајима за промену радног листа)

Привате Суб Ворксхеет_Цханге (БиВал Таргет Ас Ранге) Иф Нот Интерсецт (Таргет, Ранге ("А: А")) Ис Нотхинг тхенОн Грешка Настави даље Иф Таргет.Валуе = "" ТхенТаргет.Оффсет (0, 1) = "" Елсе Таргет .Оффсет (0, 1) .Валуе = Формат (Сада, "мм/дд/гггг ХХ: мм: сс") Енд Иф Енд Иф Енд Суб 

Да бисте покренули овај код, отворите ВБА и двапут кликните на лист у прозору пројекта на којем желите да прикажете временску ознаку.

Сада морамо да користимо ВБА управљач догађајима јер желимо да покренемо наш код за покретање сваки пут када се изврши промена.

Из падајућег менија изнад кода изаберите Радни лист.

Сада поред радног листа који пада, видећете још један падајући мени. Садржи много руковалаца догађајима. За сада изаберите „промени“.

Сада копирајте горњи код овде.

И то је учињено. Вратите се на свој лист и проверите.

Објашњење кода:

    • Код је написан на листу 1 двоструким кликом на њега. То значи да ваш код припада само овом листу.
    • Користили смо алатку „Цханге“ за обраду догађаја „Ворксхеет“ за покретање нашег ВБА кода.
    • Приватни подрадни лист_Промени (БиВал циљ као опсег)

      Ово је фиксно и задано име потпрограма руковаоца променама.

    • Желимо да се наш код покрене само у колони А.
    • Ако се не пресеца (циљ, домет ("А: А")) онда није ништа

      Ова линија проверава да ли је измењена ћелија у колони А или не.

    • Сада, ако горња линија враћа Труе, онда се ове линије извршавају
Укључено Грешка Настави даље Ако је Таргет.Валуе = "" ТхенТаргет.Оффсет (0, 1) = "" ЕлсеТаргет.Оффсет (0, 1) .Валуе = Формат (Сада, "мм/дд/гггг ХХ: мм: сс")

Први ред занемарује грешку поп и покреће ова два реда. Ако изоставите Он Грешка Настави даље видећете грешку која се појављује када избришете вредност у колони А.

Ако је Таргет.Валуе = "" Онда

:- Ова линија проверава да ли је ћелија у колони А празна. Ако да онда

Таргет.Оффсет (0, 1) = ""

:- Ова линија брише суседну вредност ћелије.

А ако је Фалсе

 Елсе Таргет.Оффсет (0, 1) .Валуе = Формат (Сада, "мм/дд/гггг ХХ: мм: сс")

:- Ова линија уноси тренутно време и датум у суседство А колоне.

  • А последње три линије само затварају свој одговарајући блок. И готово је. Сада имате лист који даје тачно време промене извршено у ћелији колоне А.

Можда сте приметили да на падајућој листи постоји неколико руковалаца догађајима. Играјте се око њих. Покушајте да откријете шта функционише сваки руковалац догађајима. А ако имате потешкоћа, запишите их у одјељак коментара.

Уметните временску ознаку датума са ВБА

Ви ће помоћи развој сајта, дељење страницу са пријатељима

wave wave wave wave wave