毎回の見積書作成
印刷ボタンを押して、さらに「名前を付けて保存」でPDFを選んで、デスクトップに新しいフォルダを作って… この作業、1回は数秒でも毎日やると本当に面倒ですよね
私のチームでも「もっと楽にならないの?」と不満が出ていました。
そこで、AIに指示を出して
「印刷と同時に、デスクトップに専用フォルダを作ってPDF保存する」
というVBAツールを作ってみました
導入した結果、
メンバーからは「こんなのが欲しかった!」と大絶賛
劇的な時短に成功しました
この記事では、そのVBAコードをそのまま公開します
難しい知識は一切不要です
エクセルにコピーして貼り付けるだけで、誰でもすぐに同じ機能が使えますよ!
Sub SaveAsPDF_to_Desktop()
Dim ws As Worksheet
Dim desktopPath As String
Dim folderPath As String
Dim fileName As String
' 現在のシートを設定
Set ws = ActiveSheet
' デスクトップのパスを取得
desktopPath = CreateObject("WScript.Shell").SpecialFolders("Desktop")
' デスクトップに作るフォルダ名を指定(例:見積書PDF)
folderPath = desktopPath & "\見積書PDF"
' フォルダが存在しない場合は新しく作成
If Dir(folderPath, vbDirectory) = "" Then
MkDir folderPath
End If
' ファイル名をセルから取得(例:A1セルの得意先名 + B1セルの日付)
' ※空白の場合は「見積書_日時」にする
If ws.Range("A1").Value <> "" Then
fileName = ws.Range("A1").Value & "_" & Format(Now, "yyyymmdd_hhmmss") & ".pdf"
Else
fileName = "見積書_" & Format(Now, "yyyymmdd_hhmmss") & ".pdf"
End If
' 印刷を実行(1部)
ws.PrintOut Copies:=1
' PDFとして保存
ws.ExportAsFixedFormat Type:=xlTypePDF, fileName:=folderPath & "\" & fileName, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
MsgBox "印刷とPDFの保存(デスクトップの見積書PDFフォルダ)が完了しました!", vbInformation, "自動化ツール"
End Sub
やり方として
1,エクセルを開いて「Alt」+「F11」キーを押し、VBAの画面を開きます。
2,上のメニューから「挿入」>「標準モジュール」をクリックします。
3,出てきた白い画面に、上のコードをそのまま貼り付けて閉じれば完成です!

コメント