Excel - Chế độ xem tùy chỉnh/Truy vấn macro

Xin chào,

Tôi có một bảng với 150 cột chứa tên bác sĩ kèm dữ liệu. Tôi đã tạo các chế độ xem tùy chỉnh cho mỗi bác sĩ để chỉ hiển thị dữ liệu của họ từng người một. Có mã VBA nào cho phép tôi xuất mỗi chế độ xem tùy chỉnh đó ra một trang tính hoặc thậm chí là một sổ làm việc riêng biệt không? Chúng tôi cần gửi thông tin cho từng bác sĩ một cách riêng lẻ, việc này tốn rất nhiều thời gian vì phải duyệt qua 150 chế độ xem tùy chỉnh rồi sao chép thông tin đó vào một trang tính khác. Nếu ai đó có thể giúp đỡ, tôi sẽ vô cùng biết ơn.

Ví dụ về bảng:

Tiến sĩ 1

Tiến sĩ 2

Tiến sĩ 3

Tiến sĩ 4

Tiến sĩ 5

Phí

211

0

4554678

1567

5786

Thuế

4521

455

5

1535

0

tích lũy

12452

453

7867

453456

0

Phí

424

8767

4546786

17867

0

Thuế

5654

0

6

12

78625378

tích lũy

21

0

6587678

0

786




Trả lời:
Trả lời: Về việc in các chế độ xem tùy chỉnh

Đoạn mã sau hoạt động tốt với tôi trên XL2010.
Tôi thực sự khuyên bạn nên thử đi qua nó vài lần.

Để xem nó hoạt động như thế nào trước khi lãng phí 150 tờ giấy.

'---

Sub PrintCustomViews()
'Chẳng còn gì để mất - Tháng 7 năm 2021'
Khi xảy ra lỗi, hãy chuyển đến NO_VIEW
Dim Cvw As Excel.CustomView

Ứng dụng.Màn hình cập nhật = Sai
Đối với mỗi Cvw trong ThisWorkbook.CustomViews
Ứng dụng.StatusBar = Cvw.Name
Cvw.Show
Excel.Select.PrintOut
Kế tiếp

KHÔNG XEM:
Đặt Cvw = Không có gì
Application.StatusBar = False
Ứng dụng.Màn hình cập nhật = Đúng
End Sub
'---

NLtL

>> https://1drv.ms/u/s!Au8Lyt79SOuhZw2MCH7_7MuLj04?e=sAwbHU

( Các chương trình Excel miễn phí )



Trả lời:

CHÀO,

Tôi đã thử chạy macro của bạn nhưng nó chỉ lưu mỗi chế độ xem tùy chỉnh với 7 dòng đầu tiên và không có thông tin về phí. Bạn có biết tại sao không?

Cảm ơn,

Josh



Trả lời:

Chào JDeM22

Tôi đề xuất phương pháp tiếp cận sau đây.

1) Tạo một trang tính mẫu trong sổ làm việc của bạn tương tự như "Chế độ xem tùy chỉnh" mà bạn muốn xuất/gửi cho từng bác sĩ.

Bạn có thể định dạng và thêm tất cả thông tin/chi tiết cần thiết về kỳ báo cáo vào mẫu này.

Hình ảnh

2) Tạo một thư mục nơi bạn muốn lưu trữ các tệp tin.

3) Thay vì tạo nhiều tệp Excel, tôi sẽ chọn lưu chúng dưới dạng tệp PDF để gửi cho bác sĩ.

4) Đoạn mã sau sẽ lưu từng tệp báo cáo/dữ liệu riêng lẻ vào đường dẫn thư mục được chỉ định, với mẫu tên sau:

Tên bác sĩ - Báo cáo tài chính - Ngày hiện tại.pdf

Hãy thử đoạn mã sau

'''' ************************************************************************************

Sub CreateMultiplePDFsReports()

Dim myFolderPath As String

Bác sĩ mờ Phạm vi như Phạm vi

Dim dr As Range

Dim drName As String

Dim reportDate As String

Dim fullPath As String

myFolderPath = " C:\Users\Administrator\Downloads\Doctors Reports \" ''' Thay đổi đường dẫn thư mục cho phù hợp

reportDate = Format(Date, "dd-mmm-yyyy")

Ứng dụng.Màn hình cập nhật = Sai

Với Sheets("Data")

Đặt doctorsRange = .Range( "B1:F1" ) ''' Thay đổi phạm vi tên bác sĩ cho phù hợp

''' Lặp qua tất cả tên cột tiêu đề của bác sĩ.''

Đối với mỗi bác sĩ trong phạm vi bác sĩ

Điền thông tin của từng bác sĩ vào mẫu.

Với Sheets ("Mẫu")

.Range("C5").Value = Date '' Ngày hiện tại

.Range("B2").Value = dr.Value ''' Tên bác sĩ

.Range("D8").Resize(6).Value = dr.Offset(1).Resize(6).Value ''' Dữ liệu của bác sĩ

Lưu mẫu dưới dạng tệp PDF vào thư mục đã chỉ định.

drName = dr.Value

fullPath = myFolderPath & drName & "-Báo cáo tài chính-" & reportDate & ".pdf"

.ExportAsFixedFormat Type:=xlTypePDF, Filename:=fullPath, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

Kết thúc bằng

Bác sĩ tiếp theo

Kết thúc bằng

Ứng dụng.Màn hình cập nhật = Đúng

MsgBox "Công việc đã hoàn thành"

End Sub

''''''****************************************************************************

GHI CHÚ:

Hãy thay đổi/điều chỉnh tên trang tính và phạm vi trong mã cho phù hợp với tình huống thực tế của bạn.

Đây là hình ảnh thư mục sau khi chạy macro từ dữ liệu mẫu mà bạn đã cung cấp.

Hình ảnh

Bạn có thể tải xuống tệp mẫu chứa lời giải này từ liên kết bên dưới.

>

https://we.tl/t-vqfqKTbl7H

Hãy cho tôi biết nếu bạn cần thêm sự trợ giúp.

Trân trọng,

Jeovany

Comments

Popular posts from this blog

Xử lý hàng loạt các tệp Excel được bảo vệ bằng mật khẩu

Thu hẹp và mở rộng cột trong Excel

Excel: Tìm và trả về "số cuối cùng" trong một cột, trong đó cột chứa: cả ô trống và số dương tùy ý (lớn hơn 0).