In đen trắng và màu (Microsoft Excel)
Ken có một sổ làm việc chứa 30 trang tính. Anh ấy muốn in từ tờ 1 đến tờ 29 với màu đen trắng và tờ 30 màu. Anh ấy tự hỏi liệu có cách nào để in tất cả các trang tính cùng một lúc và chỉ định rằng một trang tính cụ thể chỉ nên in màu hay không.
Điều này được thực hiện dễ dàng nhất với macro. Tất cả những gì cần làm là đặt thuộc tính .BlackAndWhite cho mỗi trang tính ngay trước khi nó được in.
Ví dụ: hãy xem xét macro đơn giản sau:
Sub PrintSingleColorSheet() Dim w As Worksheet Dim S As Integer ' Set worksheet to be in color ' (All others will print in B/W) S = 30 For Each w In Worksheets w.PageSetup.BlackAndWhite = True If w.Index = S Then w.PageSetup.BlackAndWhite = False End If w.PrintOut Next w End Sub
Macro lưu trong biến S số chỉ mục của trang tính mà bạn muốn có màu. (Trong trường hợp này, số chỉ mục là 30.) Sau đó, từng trang tính được chuyển qua và thuộc tính .BlackAndWhite được đặt thành True. Tuy nhiên, nếu thuộc tính .Index cho trang tính khớp với giá trị được lưu trữ trong S, thì thuộc tính .BlackAndWhite được đặt thành False, nghĩa là nó sẽ in màu. Sau đó, bản in được gửi đến máy in mặc định.
Bạn có thể, nếu bạn muốn, trở nên đẹp hơn với macro, nghĩa là bạn có thể yêu cầu người dùng in màu trang tính nào:
Sub PrintSingleColorSheet() Dim w As Worksheet Dim S As Integer Dim sTemp As String Dim sMsg As String sMsg = "There are " & Worksheets.Count & " worksheets in this " sMsg = sMsg & "workbook. Please enter the number of the single " sMsg = sMsg & "worksheet you want to print in color. (All " sMsg = sMsg & "others will print in black and white.)" sTemp = InputBox(sMsg) S = Val(sTemp) If S > 0 And S <= Worksheets.Count Then For Each w In Worksheets w.PageSetup.BlackAndWhite = True If w.Index = S Then w.PageSetup.BlackAndWhite = False End If w.PrintOut Next w Else sMsg = "You entered a value that is out of range." If sTemp <> "" Then MsgBox sMsg End If End If End Sub
Phiên bản này của macro yêu cầu người dùng nhập số trang tính. Nếu giá trị đã nhập nằm ngoài phạm vi, thì thông báo lỗi sẽ hiển thị và macro không in bất kỳ thứ gì. Nếu người dùng nhấp vào Hủy hoặc để trống hộp nhập, thì macro chỉ thoát ra mà không in bất cứ thứ gì.
ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.
Mẹo này (13738) áp dụng cho Microsoft Excel 2007, 2010, 2013, 2016, 2019 và Excel trong Office 365.