Tô màu ô bằng công thức (Microsoft Excel)
Các ô trong trang tính có thể chứa giá trị hoặc chúng có thể chứa công thức. Đôi khi, bạn có thể muốn bằng cách nào đó đánh dấu tất cả các ô trong trang tính của mình có chứa công thức bằng cách tô màu các ô đó. Có một số cách bạn có thể tiếp cận và giải quyết vấn đề này. Nếu bạn không cần phải làm nổi bật thường xuyên, cách tiếp cận thủ công có thể là tốt nhất.
Làm theo các bước sau:
-
Nhấn F5 hoặc Ctrl + G. Excel sẽ hiển thị hộp thoại Đi tới.
-
Nhấp vào Đặc biệt. Excel sẽ hiển thị hộp thoại Đi đến Đặc biệt. (Xem Hình 1.)
-
Chọn nút radio Công thức.
-
Bấm OK.
Tại thời điểm này, mọi ô trong trang tính có chứa công thức đều được chọn và bạn có thể thêm màu vào các ô đó hoặc định dạng chúng theo ý muốn. Phương pháp này có thể được tự động hóa, nếu muốn, bằng cách sử dụng một macro như sau:
Sub ColorFormulas() ActiveSheet.Cells.SpecialCells(xlCellTypeFormulas, 23).Select With Selection.Interior .ColorIndex = 6 .Pattern = xlSolid End With End Sub
Bạn có thể chạy macro này thường xuyên nếu cần để đánh dấu các ô khác nhau có chứa công thức. Vấn đề duy nhất là nếu một công thức bị xóa khỏi ô đã được đánh dấu trước đó, phần đánh dấu vẫn còn; nó không bị loại bỏ tự động. Trong trường hợp này, một cách tiếp cận vĩ mô khác được yêu cầu. Macro này hoạt động trên một loạt các ô bạn chọn trước khi chạy macro.
Sub ColorFunction() For Each cell In Selection If cell.HasFormula Then With cell.Interior .ColorIndex = 6 .Pattern = xlSolid End With Else cell.Interior.ColorIndex = xlNone End If Next cell End Sub
Macro kiểm tra từng ô trong phạm vi. Nếu ô chứa một công thức, thì nó sẽ được tô sáng. Nếu ô không chứa công thức, thì phần đánh dấu sẽ bị tắt.
Một giải pháp tiềm năng khác là sử dụng một hàm do người dùng xác định cùng với khả năng định dạng có điều kiện của Excel. Tạo hàm sau trong VBA Editor:
Function CellHasFormula(c As Range) As Boolean CellHasFormula = c.HasFormula End Function
Với chức năng này, bạn có thể sử dụng các khả năng định dạng có điều kiện của Excel (được trình bày chi tiết ở những nơi khác trong ExcelTips) để kiểm tra công thức trả về. Nói cách khác, bạn sẽ đặt một định dạng có điều kiện để kiểm tra kết quả của công thức này:
=CellHasFormula(A1)
Nếu kết quả là true (ô chứa công thức), thì định dạng có điều kiện của bạn sẽ được áp dụng.
Điều thú vị cần lưu ý là bạn không phải tạo macro VBA để sử dụng định dạng có điều kiện, nếu bạn không muốn. (Một số người thường không thích sử dụng macro.) Thay vào đó, bạn có thể làm theo các bước sau:
-
Nhấn Ctrl + F3. Excel sẽ hiển thị hộp thoại Xác định Tên.
-
Trong trường Tên (ở đầu hộp thoại), hãy nhập tên chẳng hạn như FormulaInCell.
-
Trong trường Tham khảo (ở cuối hộp thoại), nhập thông tin sau:
-
Bấm OK.
Bây giờ bạn có thể làm theo các kỹ thuật đã nêu trước đây để thiết lập định dạng có điều kiện. Sự khác biệt duy nhất là định dạng có điều kiện nên kiểm tra công thức sau, thay vào đó:
=FormulaInCell
_Lưu ý: _
Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.
ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.
Mẹo này (2766) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003.