Екцел Пицкер датума | Како уметнути бирач датума (календар) у Екцел?

Како уметнути бирач датума у ​​Екцел?

За уметање падајућег календара користићемо АцтивеКс контрола која је „Мицрософт контролер избора датума и времена 6.0 (СП6)“.

Овде можете преузети овај Екцел Предложак за одабир датума - Екцел Предложак за одабир датума

Претпоставимо да морамо да водимо податке о запосленима у компанији. Постоји неколико поља попут

  • Емп Цоде
  • Име Емп
  • Датум придруживања емпу
  • Емп Департмент

Да бисмо унели податке у МС Екцел, креирали смо следећи формат.

Да бисмо унели датум придруживања Емп, потребно је да направимо падајући календар како би кориснику било лакше да унесе датуме придруживања.

Да бисте креирали падајући календар, доле су дати кораци -

Морамо да убацимо „АцтивеКс контрола“ назван „Мицрософт контролер избора датума и времена 6.0 (СП6)“. За уметање користићемо „Убаци“ команда под „Контроле“ група у „Програмер“

Ако је „Програмер“ картица није видљива, доле су кораци које треба следити да би иста била видљива.

  • Корак 1: Под „Датотека“ мени, изаберите 'Опције'

  • Корак 2:Дијалошки оквир са именом „Екцел опције“ отвориће се. Изаберите ‘Прилагоди траку’ са леве ивице дијалошког оквира. Поље за потврду за „Програмер“ картицу и кликните на 'У РЕДУ'.

  • Корак 3:Сада можемо видети „Програмер“ језичак на последњем делу врпце.

  • Корак 4: Изаберите „Још контрола“ из АцтивеКс контрола.

  • Корак 5: Изаберите „Мицрософт контролер избора датума и времена 6.0 (СП6)“ са листе и кликните на 'У РЕДУ'.

  • Корак 6: Кликните било где на радном листу да бисте креирали падајући календар.

  • Корак 7: Десни клик на „Бирач датума“ и изабрати „Својства“ са списка.

  • Корак 8: Промените вредност из „Нетачно“ до 'Истинито' за 'Поље за потврду' својство тако да се могу прихватити и нулл вредности. Затворите „Својства“ Дијалог.

  • Корак 9: Поново кликните десним тастером миша на бирач датума и одаберите „Прикажи код“ из контекстуалног менија.

  • Корак 10: У „Висуал Басиц Едитор“, видимо да је неки код већ написан. Замените код следећим кодом.

Шифра:

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

  • Корак 11: Прва изјава у коду говори МС Екцел компајлеру да покрене код кад год је изабрана нова ћелија (избор је промењен). Изабрана ћелија се шаље у Суб процедуру као „Циљ“.
 Привате Суб Ворксхеет_СелецтионЦханге (БиВал Таргет Ас Ранге)
  • Корак 12: Ове изјаве постављају висину и ширину бирача датума на 20 поена у екцелу. Може се приметити да смо користили „Са“ оператора тако да не треба да се позивамо на њега ДТПицкер1 опет и опет.
 Са Схеет1.ДТПицкер1 .Хеигхт = 20 .Видтх = 20
  • Корак 13: Следеће 'Ако' клаузула поставља критеријуме да ако је изабрана нека ћелија у „Ц“ колона, тек тада бирач датума добија видљивост. Ми смо користили „Пресеци“ функција јер ова функција проверава да ли смо изабрали било коју ћелију у ступцу Ц, тада ће ова функција вратити адресу, иначе би вредност била нулл.
 Ако се не пресеца (циљ, домет ("Ц: Ц")) није ништа. Видљиво = Тачно 
  • 14. корак: „Врх“ својство бирача датума је постављено као једнако „Врх“ вредност својства Изабране ћелије. То значи да ће ово ићи заједно са горњом границом изабране ћелије.
.Топ = Циљ.Врх
  • Корак 15: Ова изјава поставља лево својство бирача датума једнако као и својство следеће десне ћелије изабране ћелије (Удаљеност леве границе Д колоне од крајњег левог дела радног листа). Да бисмо добили референцу на следећу десну ћелију, користили смо 'Офсет' функција са 0 као аргумент реда и 1 као аргумент колоне јер ће ово добити референцу на ћелију у следећој колони.
.Лефт = Таргет.Оффсет (0, 1) .Лефт
  • Корак 16: Ова изјава повезује бирач датума са ћелијом Циљ, тако да која год вредност буде изабрана у падајућем календару који је приказан у ћелији.
.ЛинкедЦелл = Таргет.Аддресс
  • Корак 17: Израз ‘Елсе’ каже компајлеру да не приказује бирач датума када је изабрана било која ћелија осим оне у ступцу Ц.
Елсе .Висибле = Фалсе
  • Корак 18: На крају затварамо 'Ако'
 Крај ако 
  • Корак 19: Напокон, морамо да затворимо „Са“
 Завршити 
  • Корак 20: Сада ће се потпроцедура завршити.
 Енд Суб 

Обавезно сачувајте датотеку са „.Кслсм“ додатак јер чува ВБА код који смо написали и моћи ћемо да покренемо овај код када се у колони Ц изабере било која ћелија.

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

Морамо да кликнемо на било који датум у календару у изабраном месецу да бисмо тај датум унели у изабрану ћелију.

Месец можемо променити у претходни или следећи помоћу дугмета са стрелицом смештеног на левој и десној страни календара.

Такође можемо да кликнемо на месец да бисмо из падајућег менија изабрали месец.

Годину такође можемо променити тако што ћемо кликнути на годину, а затим стрелицама горе и доле одабрати жељену.

Ствари које треба запамтити

  • „Мицрософт контролер избора датума и времена 6.0 (СП6)“ није доступан за 64-битну верзију МС Екцел-а.
  • Након писања ВБА кода, датотеку морамо сачувати са ознаком ‘.клсм’ (Екцел Мацро-Енаблед Воркбоок), иначе ВБА код не би могао да се покрене.