Tôi đang cố gắng viết một hàm nhỏ có trong tệp (nơi sổ làm việc được lưu tại), đường dẫn đích (nơi tệp pdf sẽ được lưu vào) và một chuỗi tên tab (pipe (|) delimited) trong excel.VBA Tham khảo trang tính so với biểu đồ
Người dùng chức năng không phải nhập một chuỗi tên tab (tùy chọn) và nếu không, tôi muốn chọn tất cả các tab hiển thị và in chúng. Đây sẽ là trong trường hợp nếu người dùng có 50 bảng xếp hạng trong bảng tính riêng biệt và không muốn viết một chuỗi như "Chart1 | Chart2 | ...."
Code:
For Each WSO.Name In WBO.Worksheets
strSheets = strSheets & WSO.Name & "|"
Next WSO
strSheets = Left(strSheets, Len(strSheets) - 1)
arraySheets() = Split(strSheets, "|")
WBO.Sheets(arraySheets()).Select
WBO.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
strFilePath, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
Có hai các vấn đề với vòng lặp For Each: nó không lấy bất kỳ trang tính nào như "Chart1", nó chỉ lấy các trang tính như "Sheet1". Ngoài ra, nó sẽ lấy tờ ẩn để khi tôi cố gắng chọn tất cả tôi nhận được một lỗi ngoài giới hạn.
Tôi không biết liệu trang tính biểu đồ có được giới thiệu khác đi không, sau đó một trang tính thông thường hoặc tại sao trang tính ẩn cũng được chọn.
Tất nhiên, 'ActiveWorkbook.Sheets' bao gồm cả 'ActiveWorkbook.Worksheets' và' ActiveWorkbook.Charts'. –