VBA CDATE - Как да използвам CDATE в Excel VBA? (с примери)

Съдържание

Функция CDATE във VBA

VBA CDATE е функция за преобразуване на тип данни, която преобразува тип данни, който е или текст или низ, в тип данни за дата. След като стойността се преобразува в тип данни за дата, тогава можем да си поиграем с неща от датата.

Синтаксис на CDATE

По-долу е синтаксисът на функцията CDATE във VBA.

Израз: Изразът може да бъде низ или текстова стойност или променлива, която съдържа стойност, която трябва да бъде преобразувана в типа данни за дата.

CDATE идентифицира формата на датата и часа в компютъра, върху който работим, и преобразува предоставената стойност в същия тип данни за дата. Ако въведете само ден и месец и игнорирате година, тогава функцията CDATE взема системната година, показва заедно с предоставения ден и месец.

Ще виждаме все повече примери в раздела по-долу.

Как да използвам функцията CDATE в Excel VBA?

Примери за функция CDATE в Excel VBA.

Пример # 1

Преди да ви покажа примера за CDATE, първо разгледайте кода по-долу.

Код:

Sub CDATE_Example1 () Dim k As String k = "25-12" MsgBox k End Sub

В горното за променливата „k“ присвоих стойността като „25-12“. Когато изпълня този код, ще видим същата стойност в полето за съобщения във VBA.

Но това може да бъде преобразувано в дата с помощта на функцията VBA CDATE, за това определете още една променлива като Дата.

Код:

Dim k1 Като дата

За тази променлива „k1“ присвоява функцията CDATE и предоставя променливата „k“, която съдържа низа „25-12“. И за полето за съобщение покажете стойността на променливата „k1“ вместо „k“.

Код:

k1 = CDate (k)

Сега стартирайте кода и вижте резултата в полето за съобщение.

Така че резултатът е „25.12.2019“.

Погледнете отблизо стойността, която сме предоставили. Доставихме „25-12“, не сме доставили година.

Докато пишех тази статия, текущата година в моята система беше 2019, така че VBA CDATE преобразува низовата стойност „25-12“ към днешна дата и добави системната 2019 година към нея. Така че окончателните резултати четат като този 25.12.2019 т.е. 25 -ти декември 2019.

Пример # 2

Сега вижте кода по-долу.

Код:

Sub CDATE_Example2 () Dim k As Variant Dim kResult As Date k = 43889 kResult = CDate (k) MsgBox kResult End Sub

В горния код за променливата „k“ съм приложил числото „43889“. Всички знаем, че това е сериен номер, но за друга променлива „KResult“ сме преобразували тази стойност към днешна дата, използвайки функцията „CDATE“.

Същият резултат от променливата “KResult” е показан в полето за съобщения.

Изпълнете кода и вижте магията на функцията „CDATE“.

Той показва резултата като „2/2/2020“, ако не сте запознати с датите в Excel, тогава трябва да се чудите как се е случило това.

Например въведете същия номер (43889) в една от клетките в електронната таблица.

За целта приложете формата като „ДД-ММ-ГГГГ“.

Сега кликнете върху Ok и ще видите резултата.

Сега резултатът се промени от сериен номер към днешна дата. Тъй като сме приложили формат за дата отгоре на серийния номер, той показва съответната дата.

Това означава, че серийният номер 43889 е равен на датата 28-02-2020.

Така че в нашия VBA код функцията CDATE изпълнява същото, като преобразува стойността на низа в тип данни за дата.

Пример # 3

За този пример вижте кода по-долу.

Sub CDATE_Example3 () Dim Value1 Dim Value2 Dim Value3 Value1 = "24 декември 2019" Value2 = # 6/25/2018 # Value3 = "18:30:48 PM" MsgBox CDate (Value1) MsgBox CDate (Value2) MsgBox CDate ( Стойност3) End Sub

Когато стартираме този код, ще получим резултатите по-долу.

И така, всички стойности се преобразуват в типа данни за дата с функцията CDATE.

Неща за запомняне

  • CDATE преобразува само числа и низови стойности в типа данни за дата.
  • Това е полезно, когато го използваме с други функции.
  • Ако се предостави грешна стойност на типа данни, ще получим грешка при несъответствие на типа.
  • Тъй като датата и часът са част от серийния номер, той преобразува времето, както и правилното време.

Интересни статии...