Vba: як за допомогою isdate перевірити, чи є клітинка датою


Ви можете використовувати функцію IsDate у VBA, щоб перевірити, чи дана клітинка є датою.

Ця функція поверне значення True , якщо значення в даній комірці розпізнається як дата.

В іншому випадку функція поверне значення False .

Ось поширений спосіб використання цієї функції на практиці:

 SubCheckDate ()
    
Dim i As Integer

For i = 1 To 9
    
    If IsDate(Range(" A " & i)) = True Then
        Range(" B " & i) = " Is a Date "
    Else
        Range(" B " & i) = " Is Not a Date "
    End If
Next i
    
End Sub

Цей конкретний макрос перевірить, чи кожна клітинка в діапазоні A1:A9 є датою.

Якщо клітинка є датою, тоді у відповідній клітинці в діапазоні B1:B9 буде повернено значення “Є датою”.

Якщо клітинка не є датою, натомість буде повернено «Не є датою».

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: як використовувати IsDate у VBA

Припустимо, у нас є наступний стовпець значень в Excel:

Припустімо, ми хочемо перевірити, чи кожна клітинка в стовпці A є датою.

Для цього ми можемо створити такий макрос:

 SubCheckDate ()
    
Dim i As Integer

For i = 1 To 9
    
    If IsDate(Range(" A " & i)) = True Then
        Range(" B " & i) = " Is a Date "
    Else
        Range(" B " & i) = " Is Not a Date "
    End If
Next i
    
End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Стовпець B повідомляє нам, чи розпізнається кожна відповідна клітинка в стовпці A як дата.

Зауважте, що ми обираємо повернення «Є датою» або «Не є датою», але ви можете повернути все, що забажаєте, за допомогою оператора If Else .

Примітка . Ви можете знайти повну документацію для функції VBA IsDate тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: Як отримати назву місяця від дати
VBA: як використовувати функцію DateValue
VBA: число більше за дату

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *