Excelマクロで文字列型を日付型に変換するCDate関数

Excelマクロ_CDate関数の画像

この記事には広告を含む場合があります。

記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

Excelマクロで文字列型を日付型に変換するvbaの記述にはCDate関数を使います。

(Microsoft;CDate関数より)

CDate_21

(使用Excel)2013

参考

参考 Microsoft;CDate関数


Excelマクロで文字列型を日付型に変換するCDate関数

Excelマクロで文字列型を日付型に変換するにはCDate関数を使用します。次のようなExcelシートを用意しました。

CDate_11

B1セル、B2セル、B3セルを結合して日付表示するマクロを記述します。下の画像のとおり、strGy、strGm、strGdという3つの変数を用意し、それぞれのセルの文字を代入します。

CDate_12

次にstrGbという変数に、上記3つの変数(strGy、strGm、strGd)を使用して、「2016/4/5」という文字列型のデータを代入ます。(上の画像の緑色の枠囲み部分)

最後に、赤色の枠囲み部分でCDate関数を使って日付型に変換します。それをA6セルに表示します。

実行すると次のとおりです。

CDate_13

 

CDate関数を使ってシート名称の文字列型を日付型に変換してセルに入力

CDate関数を使うと、下の画像のようにシート名称に「201604」というような年月を指定し、そのシート名称から日付を作成してセルに入力することができます。

CDate_14

このシート名称から「2016/4/1」をA5セルに入力するマクロを記述してみます。(定義部分は略)

CDate_15

上の画像のピンク色の枠囲み部分では、「201604」のシートの名前(ws1.Name)を変数strGaに代入し、strGaの左四文字(2016)を変数strGyに、右二文字(04)を変数strGmに代入しています。

次に変数strGbに上記のstrGyとstrGmという2つの変数を使って「2016/4/1」という文字列型のデータを代入し、赤色の枠囲み部分でCDate関数を使って日付型に変換します。それをA5セルに表示します。

実行すると次のとおりです。

CDate_16

 


■□◆◇ 編集後記 ◇◆□■

昨日、今日と関東はかなり暑くなりました。ネクタイをはずしたい。