こんにちは。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も見ています
-
最近、いつ泣きましたか?
泣いてストレス発散! なんて言いますよね。 あなたは最近いつ、どんなシチュエーションで泣きましたか?
-
家・車以外で、人生で一番奮発した買い物
どんなものにお金をかけるかは人それぞれの価値観ですが、 誰もが一度は清水の舞台から飛び降りる覚悟で、ちょっと贅沢な買い物をしたことがあるはず。
-
ホテルを選ぶとき、これだけは譲れない条件TOP3は?
ホテルを探す時、予約サイトで希望条件の絞り込みができる便利な世の中。 あなたは宿泊先を決めるとき「これだけは譲れない」と思う条件TOP3を教えてください。
-
【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
【お題】 ・世界最古のコンビニについて知ってる事を教えてください
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
エクセルをPDFで保存し、ファイル名はA1セルを参照するVBAの記述を教えてください。
Excel(エクセル)
-
エクセル マクロ 名前を付けて保存 PDF保存先指定 ファイル名任意+日付
Excel(エクセル)
-
VBAでセルに入っている日付をシート名にする
Excel(エクセル)
-
-
4
マクロボタンを押すと、ファイル名を“日付(年月日)_文字.xlsx”にして指定ファイルに保存したいの
Excel(エクセル)
-
5
【VBA】PDF出力に任意のファイル名前を付ける方法
Excel(エクセル)
-
6
VBA セル入力された日付データから年月のみを取り出してファイル名につけたい
Access(アクセス)
-
7
【Excel】指定したセルの名前でPDFを保存する【VBA】
Visual Basic(VBA)
-
8
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
9
Excelの選択範囲を特定のセル値をファイル名にしてPDFで保存する
Excel(エクセル)
-
10
【マクロ】ファイル名の日付によって、保管するフォルダを、自動選択したい
Excel(エクセル)
-
11
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
12
ファイル名を今日の日付、時刻で保存する
Visual Basic(VBA)
-
13
Excel VBA セルの値をファイル名にして保存するには
Visual Basic(VBA)
-
14
EXCELで日付を自動でファイル名にしたい
Excel(エクセル)
-
15
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
16
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
17
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
18
名前をつけて保存した後、元のファイルに戻るには
その他(コンピューター・テクノロジー)
-
19
【VBA】マクロの入ったファイルと同じフォルダに,出力したファイルを保存するコードについて
Visual Basic(VBA)
-
20
Excelのセルにユーザー名を表示する方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
日付だけを変更して印刷(Excel)
-
入力後に日付順になるように自...
-
31:30:00が1900/1/1 7:30:0
-
日付を入力したセルをファイル...
-
EXCELで直近の日付を抽出する関数
-
Excelで半年後の日付を計算したい
-
Excelに入力した個々の日付の数...
-
エクセルで数字列の間に『/』を...
-
エクセル 当番表の作り方 エク...
-
エクセルで、曜日から日付を呼...
-
エクセル関数で日付かどうかの...
-
Excelで8/26等の日付を全てその...
-
EXCELで、西暦を固定させる。
-
Excel 複数セルの一括編集(一...
-
ワード差込について
-
エクセルのセルにカレンダーを...
-
エクセルの和暦(複雑)を西暦表...
-
エクセルのセルにたとえば「756...
-
エクセルでENTERを押すと数式が...
-
エクセルでカレンダーにハイパ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
31:30:00が1900/1/1 7:30:0
-
Excelで半年後の日付を計算したい
-
日付だけを変更して印刷(Excel)
-
入力後に日付順になるように自...
-
エクセル関数で日付かどうかの...
-
エクセルでENTERを押すと数式が...
-
Excelで8/26等の日付を全てその...
-
エクセルで数字列の間に『/』を...
-
エクセル 当番表の作り方 エク...
-
Excelに入力した個々の日付の数...
-
ファイルのオープン時に今日の...
-
エクセルで1年後の月末を表示さ...
-
エクセルのセルにたとえば「756...
-
EXCELで直近の日付を抽出する関数
-
WORDで翌日や翌々日の日付を表...
-
☆Excelエクセルで入力した日の...
-
日付を入力したセルをファイル...
-
エクセルで日付入力欄を作成し...
-
エクセル グラフ 軸の日付表記...
-
ワード差込について
おすすめ情報