Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 11 Home : Microsoft 365)
保存するファイル名にセルの値を挿入
投稿日時: 25/02/09 18:59:29
投稿者: yurappy

お世話になります。
 
保存時のファイル名の設定の仕方で悩んでいて、助けてください。
 
シートをPDFファイルで保存したくて、こちらのページを参考に、ファイル名に今日の日付けを加える様にするまではできました。
 
参考にしたページ
 
 https://www.sejuku.net/blog/99137
 
日付けを加えたコード
 
 
    Const fileName = "ファイル名"
    Const folderPath = "C:¥Users¥Desktop¥PDF¥"
    Const filePath = folderPath & fileName
     
    Worksheets("シート名").ExportAsFixedFormat Type:=xlTypePDF, fileName:=filePath & Format(Date, "yyyymmdd") & ".pdf"
 
 
日付けの箇所を、シート中のセルの値にできないかと悩んでます。
 
考えている例
 
Worksheets("シート名").ExportAsFixedFormat Type:=xlTypePDF, fileName:=filePath & セルの値 & ".pdf"
 
 
セルの値は、日付で 2025/01/01 の様になってます。
 
どの様にセルの値を呼び出すのかわからなく、さらに/(スラッシュ)があるので、ますますわからずに悩んでます。
 
できましたら、ファイル名_2025年01月01日.pdf の様にして保存したいですが、このにできますでしょうか?
 
 
シートは、A列 購入日  B列 支店名  C列 担当者  D列 商品コード  E列 商品名 ・・・
の様に複数の列があり、2行目からデータが始まってます。
 
一番最初の日付になる A列2行目の値を ファイル名に含めてファイル名にしたいです。
 
上手に説明できなくてすみませんが、良い方法など教えてもらえたら助かります。
 
宜しくお願いいたします。
  
 
 
 
 
 

回答
投稿日時: 25/02/09 21:24:02
投稿者: simple

こんばんは
 
ファイル名には / (スラッシュ記号)は使えません。
\/:*?"<>| が禁止ですね。
 
fileName:=filePath & Format(Date, "yyyymmdd") & ".pdf"
に代えて
fileName:=filePath & Format(Range("A2").value, "_yyyy年mm月dd日") & ".pdf"
とする案が考えられます。(確認してみてください。)

投稿日時: 25/02/10 08:20:18
投稿者: yurappy

simpleさま
 
おはようございます。
 
お世話になります。
ご指導ありがとうございます。
 

引用:
fileName:=filePath & Format(Range("A2").value, "_yyyy年mm月dd日") & ".pdf"

 
教えて頂いたコードで、思うようなファイル名になりました。
 
コードの内容が理解できてないので、これから調べて勉強してみます。
 
わかり難いような文章なのに、理解頂いて親切に教えてもらって、とても助かりました。
勉強して、頑張ってみます。
 
この度はありがとうございました。