[[20230122140030]] 『名前を付けてPDF保存に関して』(ユキ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『名前を付けてPDF保存に関して』(ユキ)

初心者です。VBAなんて機能がある事を知らずに今まで過ごしてきました。こんな便利な機能があったんですね。もっと深く知りたくなりました。

マクロの記録にてPDFを自動で作りました。
CドライブのPDFフォルダーに保存していきたいのですが、ファイル名が同じで上書きされてしまいます。例えばセルL1に今日の日付と時間を設定しておき、そのセルの表示名でこのフォルダーに保存するということは可能でしょうか?
また、保存の際にPDFフォルダーに保存済み!とメッセージのPOPUPもさせたいです。ご教示頂けましたら大変ありがたいです。。。

Sub PDF化()
'
' PDF化 Macro
'

'

    Range("A1:J39").Select
    ActiveWindow.SmallScroll Down:=-20
    ChDir "C:\PDF"
    Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\PDF\作成中.pdf", _
        Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
        :=False, OpenAfterPublish:=True
End Sub

< 使用 Excel:Excel2019、使用 OS:Windows10 >


■1
>例えばセルL1に今日の日付と時間を設定しておき、そのセルの表示名でこのフォルダーに保存するということは可能でしょうか?
可能です。
まずは、提示のコードを整理するとこうなります。
    Sub 整理()
        Range("A1:J39").ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:="C:\PDF\作成中", _
            Quality:=xlQualityStandard, _
            IncludeDocProperties:=True, _
            IgnorePrintAreas:=False, _
            OpenAfterPublish:=True
    End Sub

このように整理すると一目ですが、ファイルパスの部分は↓のようになっています。

 "C:\PDF\作成中"
 "C:\PDF\作成中_20230122_165430"

これを、セルL1の値を使って↑のようにしたいということですから↓のようにすればOKです。

 "C:\PDF\作成中" & Format(Range("L1").Value, "YYYYMMDD_hhmmss")

■2
>保存の際にPDFフォルダーに保存済み!とメッセージのPOPUPもさせたいです。
Msgboxを使ってみてはどうでしょうか?

 【参考】
https://www.moug.net/tech/exvba/0100033.html
https://excel-ubara.com/excelvba1/EXCELVBA323.html
http://officetanaka.net/excel/vba/function/msgbox.htm

(もこな2) 2023/01/22(日) 17:03:11


もこな2さん、ありがとうございます。大変助かります。
トライしているのですがちょっとまだうまくいきません。
このL1には、=NOWで現在の時刻を入れています。フォルダーに常に新しい時間のpdfを保存し続けたいんです。(上書きせずに)その場合もこれで上手くいきますでしょうか?
(ユキ) 2023/01/22(日) 18:18:13

>トライしているのですがちょっとまだうまくいきません。
どのようにうまくいきませんか?

現状のコードを示したうえで

 【エラーが出る場合】
その箇所、エラー番号、エラーメッセージを

 【エラーにはならないが想定外の動作になる場合】
○○○になるはずが、×××になってしまう

のように説明できませんか?

>(上書きせずに)その場合もこれで上手くいきますでしょうか?
まずはトライしてみましたか?

(もこな2) 2023/01/22(日) 18:52:49


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.