- ベストアンサー
Excelのマクロの使い方とPDFやコピー保存方法
- Excelのマクロを使用して、指定した3つのシートをPDFに変換し、指定したセルの値でファイル名を設定し、デスクトップに保存する方法について説明します。
- また、Excelをコピー保存する方法についても解説します。マクロを有効にしたまま、指定したセルの値でファイル名を設定し、デスクトップに保存します。
- マクロの使い方については、具体的な手順と注意点を紹介します。マクロを使用することで、作業を効率化し、繰り返し作業を自動化することができます。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
社員全員が使用するのにデスクトップは駄目なのでは(アクセス権を全員のデスクトップに設定しないと駄目だと思いますし、デスクトップを共有するのはどうかと思います) 共有フォルダを作成してそこに保存がいいのではないでしょうか とりあえず以下のコードはログインユーザーのデスクトップに保存します。 PDFで保存 Sheet1,Sheet2,Sheet3を Sheet4のA1に記載されたファイル名で保存 Sub Test() Dim wsh As Object Dim PdfName As String PdfName = Sheets("Sheet4").Range("A1").Value Set wsh = CreateObject("WScript.Shell") Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _ wsh.SpecialFolders("Desktop") & "\" & PdfName & ".pdf", Quality:=xlQualityStandard, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False Set wsh = Nothing End Sub 今開いているファイルを Sheet4のA1に記載されたファイル名で保存 Sub Test2() Dim wsh As Object Dim FileName As String FileName = Sheets("Sheet4").Range("A1").Value Set wsh = CreateObject("WScript.Shell") ThisWorkbook.SaveAs wsh.SpecialFolders("Desktop") & "\" & FileName & ".xlsm", _ FileFormat:=xlOpenXMLWorkbookMacroEnabled Set wsh = Nothing End Sub
その他の回答 (1)
- kkkkkm
- ベストアンサー率66% (1719/2589)
No1の補足です。 今開いているファイルを保存はこちらがいいかも Sub Test2() Dim wsh As Object Dim FileName As String, ThisFile As String ThisFile = ThisWorkbook.Path & "\" & ThisWorkbook.Name FileName = Sheets("Sheet4").Range("A1").Value Set wsh = CreateObject("WScript.Shell") ThisWorkbook.SaveAs wsh.SpecialFolders("Desktop") & "\" & FileName & ".xlsm", _ FileFormat:=xlOpenXMLWorkbookMacroEnabled ThisWorkbook.SaveAs ThisFile, FileFormat:=xlOpenXMLWorkbookMacroEnabled Set wsh = Nothing End Sub
お礼
ありがとうございました。
お礼
大変助かりました、ありがとうございます。動作も問題なかったです。また機会がありましたらどうぞよろしくお願いいたします。