アメリ力式の『月/日/年』の形式を日本式に
3行マクロ 48回
アメリ力式の『月/日/年』の形式を日本式に変換
「困ったよ、アメリカ支店から送られてきたデータの日付が、ぜんぶアメリカ式なんだよ。」
日本とアメリカでは日付の表示方法が違うので、日本版のExcelで開くとアメリカ式の日付は数値とみなされず、文字列として扱われます。
関数を使用するときには、文字列では使えません。
どうしたら日本式の日付に変換できるのでしょう。
(サンプルファイルは、こちらから 3行マクロ48回サンプルデータ)
Excelバージョン:
アメリカ式の日付を日本式の日付に変更して関数を使いたい
下記の表にある日付はアメリカ式の『月/日/年』で入力されているため、日付としてではなく、文字列として認識されています。
文字列のままでは不便なので、Excelに日付として認識してもらいます。
そのためには、一旦VBAにセルを日付として認識させ、それを元のセルに代入します。
そのためには、一旦VBAにセルを日付として認識させ、それを元のセルに代入します。
コードは次のようになります。
Sub アメリカの日付を認識させる() Range("A2:A31").Value = Range("A2:A31").Value End Sub
セル範囲を指定せず、選択範囲とする場合は、次のコードです。
マクロを知らないとめんどうな作業ですが、知っていれば簡単、たった1行のコードで済んでしまいます。
Sub アメリカの日付を認識させる2() Selection.Value = Selection.Value End Subコードを見ると、左辺=右辺なので、同じことをしているように見えますが、VBAにセルの内容を渡すことで日付と認識させ、それを再びセルの戻すという操作をしていることになります。
マクロを知らないとめんどうな作業ですが、知っていれば簡単、たった1行のコードで済んでしまいます。
イミディエイトウィンドーからも実行することができます。
Sub マクロ名()~ End Sub を書く必要はありません。 コード内にカーソルを置きEnterキーで実行されます。
こちらもお試しください。
Range(”A2:A31”).Value=Range(”A2:A31”).Valueあるいは、
Selection.Value = Selection.Value
今日の講義は以上です。お疲れ様でした。