エクセル初心者で最近業務でVBAを使う事になった者です。
フォルダないにあるエクセルファイルを一括でPDF化したいと考え以下のコードに書きました。
VBA
1 2Sub EXCELファイルPDF化03() 'フォルダのEXCELファイルの一括変換 3 4 Dim Button, T, I, L As Integer 5 Dim OpenExcelFileName, ExcelFileName, ExcelFilePath, ExFileName As String 6 7 Application.DisplayAlerts = False '確認メッセージを無効化します。 8 9 10 Button = MsgBox("EXCEファイルの一括PDF変を行いますか?", vbYesNo + vbQuestion, "確認") 11 If Button = vbYes Then 12 13 OpenExcelFileName = Application.GetOpenFilename 'ダイアログを表示取り込むフォルダーにあるファイルを選択します。 14 15 If OpenExcelFileName <> "False" Then 16 ExcelFileName = Dir(OpenExcelFileName) '指定したファイルパスからファイル名を代入します。 17 ExcelFilePath = Replace(OpenExcelFileName, ExcelFileName, "") '指定したファイルパスを指定します。(ファイルパスからファイル名を取り除く) 18 19 MsgBox ExcelFilePath & "この選択フォルダからPDFに変換します。" 20 Else 21 MsgBox "キャンセルされました" 22 Exit Sub 'キャンセルでプログラムを終了します。 23 24 End If 25 26 ExFileName = Dir(ExcelFilePath & "*.xls?") '指定したフォルダーから一件目のEXCELファイルを指定します。 27 28 29 Do While ExFileName <> "" '読み込むファイルがなくなるまで繰り返す。 30 31 32 Workbooks.Open FileName:=ExcelFilePath & ExFileName, ReadOnly:=True, UpdateLinks:=0 'EXCELファイルを読み取り専用で読み込む 33 ExFileName = Left(ExFileName, InStr(ExFileName, ".") - 1) ' ファイル名から拡張子を取り除く(.xls?) 34 ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, FileName:=ExcelFilePath & ExFileName '選択したシートをPDF出力 35 36 ActiveWindow.Close '読み込んだファイルを閉じます。 37 38 ExFileName = Dir() '次のファイルを指定する。 39 40 Loop 41 42 MsgBox "PDFファイルに一括変換しました。" 43 Else 44 MsgBox "処理を中断します" 45 End If 46 47 Application.DisplayAlerts = True '確認メッセージを有効化します。 48 49End Sub 50 51コード
問題なく実行されPDF化されるのですがエクセルファイルのうち1のシートだけをPDF化したいと考えております。
検索してみて以下のコードを試してみましたがMacでの書き方ではないのかコンパイルエラーが出てしまいます。
VBA
1From:=1, To:=1, OpenAfterPublish:=True 2コード
エクセルファイルをページ指定してPDFファイルに変換する方法が知りたいです。
宜しくお願い致します。
OS:macOS Catalina バージョン10.15.3
Excelバージョン: Microsoft Excel for Mac バージョン16.39
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/30 00:58
2020/07/30 01:06