• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel VBAで、様々な書式設定のセルをyyyymmddの文字列に)

Excel VBAで日付書式設定のセルをyyyymmddの文字列に変換する方法

このQ&Aのポイント
  • Excel VBAを使用して、様々な書式設定のセルをyyyymmddの文字列に変換したい場合、一部の書式設定では問題なく変換できますが、標準の日付書式設定ではエラーが発生することがあります。
  • この問題を解決するためには、変換前にセルの書式をチェックし、日付書式の場合はVBAの`Format`関数を使用してyyyymmdd形式に変換します。それ以外の場合は、セルの値をそのまま取得します。
  • 修正したVBAコードを以下に示します。 ```VBA dim i Columns("A:B").NumberFormatLocal = "@" For i = 1 To 5 If Cells(i, 1).NumberFormat = "@" Then Cells(i, 2) = Cells(i, 1).Text Else Cells(i, 2) = Application.Text(Cells(i, 1), "yyyymmdd") End If Next ```

質問者が選んだベストアンサー

  • ベストアンサー
  • qyukip
  • ベストアンサー率40% (13/32)
回答No.1

エラーの原因は標準で入力されていた19990101は日付型ではないためです。 1999/01/01のように入力していた文字列を修正すれば正常に表示されます。 日付型へ変換できるかISDATEを使用してチェックを入れてみるといいかもしれません。

関連するQ&A

専門家に質問してみよう