• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelのマクロについて)

Excelのマクロの使い方とPDFやコピー保存方法

このQ&Aのポイント
  • Excelのマクロを使用して、指定した3つのシートをPDFに変換し、指定したセルの値でファイル名を設定し、デスクトップに保存する方法について説明します。
  • また、Excelをコピー保存する方法についても解説します。マクロを有効にしたまま、指定したセルの値でファイル名を設定し、デスクトップに保存します。
  • マクロの使い方については、具体的な手順と注意点を紹介します。マクロを使用することで、作業を効率化し、繰り返し作業を自動化することができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.1

社員全員が使用するのにデスクトップは駄目なのでは(アクセス権を全員のデスクトップに設定しないと駄目だと思いますし、デスクトップを共有するのはどうかと思います) 共有フォルダを作成してそこに保存がいいのではないでしょうか とりあえず以下のコードはログインユーザーのデスクトップに保存します。 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

sys199
質問者

お礼

大変助かりました、ありがとうございます。動作も問題なかったです。また機会がありましたらどうぞよろしくお願いいたします。

その他の回答 (1)

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.2

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

sys199
質問者

お礼

ありがとうございました。

関連するQ&A