教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA プログラミング】(関数24)IsDate関数のプログラミング例を教えて!

f:id:m_kbou:20201006084440p:plain

IsDate関数を使用したプログラミング例を紹介します。

 

 

例題

<実行>ボタンをクリックした場合、値列(A列)に入力されているデータが「日付か?」又は「日付以外か?」を判定し、結果欄(B列)に結果を表示します。

[実行前]:

値列(A列)に数値・文字列・日付等様々なデータを入力し、<実行>ボタンをクリックします。

f:id:m_kbou:20220127075740p:plain

[実行後]:

入力した値が日付の場合は「日付です。」を、日付以外の場合は「日付ではありません。」が結果列(B列)に表示されます。

f:id:m_kbou:20220127075751p:plain

 

プログラミング

プログラミングは以下の通りとなります。

[記述例]:

Sub サンプル()

  '↓処理①
  Dim 行 As Long

  '↓処理②
  For 行 = 2 To 6
    If (IsDate(Range("A" & 行)) = True) Then
      Range("B" & 行) = "日付です。"
    Else
      Range("B" & 行) = "日付ではありません。"
    End If
  Next

End Sub

処理①:変数定義
変数を定義します。

処理②:判定処理
For~Next文を使用した2行目~6行目までの繰り返し処理を実施します。繰り返し処理の中でIsDate関数を使用してA列に入力されているデータが「日付か?」「日付以外か?」を判定し、日付の場合には「日付です。」を、日付以外の場合には「日付ではありません。」をB列に表示します。

との内容になります。

f:id:m_kbou:20220127075803p:plain

※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。また、ボタンにプログラムを割り当てるにはこちらを参考にして下さい。

 

ダウンロード

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com