いつもお世話になっております。
VBAはほとんど触ったことがないため、間違ったことを言っているかもしれませんがご容赦下さい。
VBAでエクセル内のページを変数で値を変えながら、pdfを作成できるように以下のように記述しております。
「印刷」ボタンを押すと、印刷シートの内容を順に、1.pdf、2.pdf、3.pdf…… というように
「C:\Users\xxxxxx\Downloads\sagyou\」フォルダの中にpdfが作成されていくようにしております(アカウントデータシートに書かれたデータの数だけ作成されれる)。
現在のやり方ですと、ファイルが複数作られてしまいますが、これを一つのpdfとして作成するには、どのようにすればよろしいでしょうか。
ご教示いただけますと幸いです。
よろしくお願いいたします。
VBA
1Sub 印刷() 2 Dim LastRow As Long 3 Dim i As Long 4 Dim myNo As Long 5 6 If vbNo = MsgBox("pdfを作成開始していいですか?", vbYesNo) Then Exit Sub 7 8 With Worksheets("アカウントデータ") 9 LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row 10 11 For i = 1 To LastRow 12 13 myNo = .Range("A" & i).Value 14 15 Worksheets("印刷シート").Range("J4").Value = myNo 16 17 Dim fileName As String 18 fileName = "C:\Users\xxxxxx\Downloads\sagyou\" & CStr(i) & ".pdf" 19 20 21 Worksheets("印刷シート").PageSetup.PrintArea = "A1:F30" 22 Worksheets("印刷シート").ExportAsFixedFormat Type:=xlTypePDF, fileName:=fileName, IgnorePrintAreas:=False 23 24 Next i 25 End With 26 27 MsgBox "印刷が終わりました" 28 29End Sub

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。