Xin lỗi vì bất kỳ lỗi định dạng nào trong bài đăng nhưng đây là lần đầu tiên tôi sử dụng trang web và tôi hoàn toàn không hiểu hướng dẫn định dạng câu hỏi.Excel - Xuất nhiều trang tính sang .pdf qua mã VBA
Tôi đã thấy câu hỏi này trên diễn đàn nhưng nó không hoàn toàn trả lời câu hỏi của tôi, nhưng nó có thể hữu ích cho bất cứ ai tìm cách để giúp đỡ - excel vba not exporting pagesetup to pdf correctly
Tôi gặp chính xác cùng một vấn đề của phạm vi quy định trong từng trang tính không được xuất khi sử dụng mã để tạo đầu ra .pdf. Nội dung được xuất là tất cả mọi thứ trên mỗi trang tính để mỗi trang tính được trải đều trên 2 trang trở lên. Phạm vi in cho mỗi tờ được thiết lập để in khu vực được chỉ định trên 1 trang tính.
Tôi đã cố gắng điều chỉnh mã trong liên kết ở trên nhưng dường như nó không hoạt động với nhiều trang tính.
Mã Tôi đang cố gắng sử dụng ở dạng unadapted của nó là dưới
Sub ClientPDFOutput()
If Sheets("File Data").Range("FD_FileName") = "" Then
' MsgBox ("Save the file before exporting to a .pdf fomrat"), vbInformation, "Save File"
' Exit Sub
Else
End If
ActiveSheet.Unprotect Password:=strPassword
Range("UI_Status") = "Creating client PDF output - Please wait"
SelectSheets
Application.ScreenUpdating = False
Sheets(arrSheets).Select
strFilename = "Test"
Selection.ExportAsFixedFormat _
Type:=xlTypePDF, _
filename:=ActiveWorkbook.Path & "\" & strFilename & ".pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=True, _
OpenAfterPublish:=False
Sheets("User Input").Select
Range("UI_Status") = "Client .pdf output created and saved"
ActiveSheet.Protect Password:=strPassword
Application.ScreenUpdating = True
MsgBox ("The client output in .pdf format has been created and saved"), vbInformation, ".pdf Created"
End Sub
VÀ
Sub SelectSheets()
Dim rngSheets As Range
Set rngSheets = Sheets("File Data").Range("D_OutputSheets")
If rngSheets.Count = 1 Then
arrSheets = rngSheets.Value2
Else
arrSheets = Application.Transpose(rngSheets.Value2)
End If
End Sub
TIA
Sau hơn một chút thử nghiệm tôi thành lập mà in của tôi dao động trên mỗi của các trang đã được tắt để sửa chữa những.
Tôi cũng đã thêm vào một số mã để chọn phạm vi in của từng trang tính trước khi tất cả được chọn như một phần của mảng trang tính, nhưng phạm vi in trong trang 1 của mảng đang được nhân đôi trên tất cả trang tính ... do đó Nếu phạm vi trong trang tính 1 là phạm vi in B4: P61 và trang tính 2 là B4: M48, trang tính 2 có B4: P61 được chọn khi mảng trang tính được chọn.
Điều này sau đó in ra các phạm vi đã chọn phù hợp cho trang tính 1 nhưng sai cho phần còn lại của trang tính.
Khi tôi thực hiện thủ công bằng cách chọn tất cả các trang tính, Tệp, Xuất, khi đó tất cả các phạm vi in trang sẽ được xuất, vậy tại sao khi được ghi lại và đưa vào một thường trình, nó sẽ bị bỏ qua?
Cảm ơn