
こんにちは。VBA 初心者です。
あるセルに日付を入力しています。
そのセルは書式設定の表示形式・日付で「2001/3/14」と入力した時に、「2001年3月14日」と表示される様に設定しています。
そしてこのファイルをマクロで名前をつけて保存するとき、上記のセル(の値)をファイル名したいのですが、2001\3\14と認識され、エラーが出ます。
セルに日付を入力する時に、出来るだけかな入力はせず、日付をファイル名にして保存するにはどういう方法があるでしょうか。
わかりにくい説明で申し訳ありません。ウィンドウズXP・エクセル2003です。よろしくお願いします。
No.4
- 回答日時:
こんにちは。
>そのセルは書式設定の表示形式・日付で「2001/3/14」と入力した時に、「2001年3月14日」と表示される様に設定しています。
それは、VBAの基本的なことだと思いますが、セルの書式が、「2001年3月14日」のように、yyyy年mm月dd日となって、間違いないのなら、Rangeオブジェクトの、Valueプロパティ(プロパティを付けない場合も含め)ではなくて、Text プロパティです。
それが不確実なら、以下の二番目のように、Format 関数でのテキスト変換が必要になるとのですね。
Sub TestSave()
Application.Dialogs(xlDialogSaveAs).Show _
(ThisWorkbook.Worksheets("Sheet1").Range("A1").Text)
End Sub
不確実な場合
Sub TestSave2()
Dim Fn As Variant
Fn = ThisWorkbook.Worksheets("Sheet1").Range("A1").Value
If IsDate(Fn) Then
Fn = Format$(Fn, "yyyy年MM月dd日")
Application.Dialogs(xlDialogSaveAs).Show (Fn)
Else
MsgBox "日付値ではありません。", 64
End If
End Sub
なお、ダイアログの場合、拡張子は、キメウチしなくてもよいと思います。そのままなら、xlsですし、また、拡張子も変えられます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
教えて!gooグレードポイントがdポイントに変わります!
dアカウント連携を行っていただくと、グレードに応じて「dポイント」が進呈されるようになります。
-
EXCELで日付を自動でファイル名にしたい
Excel(エクセル)
-
エクセルをPDFで保存し、ファイル名はA1セルを参照するVBAの記述を教えてください。
Excel(エクセル)
-
ファイル名を今日の日付、時刻で保存する
Visual Basic(VBA)
-
4
Excelでセル内の文字をファイル名にする方法と、下のSheet1タブを2列にする方法は?
Excel(エクセル)
-
5
VBA セル入力された日付データから年月のみを取り出してファイル名につけたい
Access(アクセス)
-
6
セルの値を使ってファイルを保存
Excel(エクセル)
-
7
excelで複数セル値を組合わせてファイル名にする方法
Excel(エクセル)
-
8
VBA PDF ファイル名をセルからつける
Excel(エクセル)
-
9
マクロ、PDFを任意のフォルダへ保存
Excel(エクセル)
-
10
excelマクロ、任意セルの値で名前を付けて任意のフォルダに保存
Visual Basic(VBA)
-
11
EXCEL VBA セルからファイル名を読み込む
Excel(エクセル)
-
12
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
13
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
14
エクセルファイル名に更新日時を入れたいです。
Excel(エクセル)
-
15
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
16
名前をつけて保存した後、元のファイルに戻るには
その他(コンピューター・テクノロジー)
-
17
VBAでセル値からフォルダ名を取得するコードについて
Excel(エクセル)
-
18
保存先のフォルダ名を指定したいとき
Visual Basic(VBA)
-
19
エクセルマクロで任意のファイル名をつけて保存したい
Visual Basic(VBA)
-
20
マクロ VBA ファイル名を連番でつけたいのですが
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
入力後に日付順になるように自...
-
5
エクセルでENTERを押すと数式が...
-
6
日付だけを変更して印刷(Excel)
-
7
◆ EXCEL自動入力日付を自動で...
-
8
セルに特定の色が出た時だけ、...
-
9
日付入力→指定のセルの色を塗り...
-
10
エクセルのデータから「/」を抜...
-
11
ファイルのオープン時に今日の...
-
12
エクセルで日付を別のシートに...
-
13
エクセルで数字列の間に『/』を...
-
14
WORDで翌日や翌々日の日付を表...
-
15
EXCELで直近の日付を抽出する関数
-
16
Excelで2週間後の日付を出したい
-
17
Excelで、年だけの「西暦」から...
-
18
エクセルのセルにカレンダーを...
-
19
エクセルで、曜日から日付を呼...
-
20
Excel 複数セルの一括編集(一...
おすすめ情報
公式facebook
公式twitter