Note: The other languages of the website are Google-translated. Back to English

Làm cách nào để đặt màu ô bằng màu ô khác trong Excel?

Nếu bạn muốn so khớp màu ô với một màu khác, một phương pháp trong bài viết này có thể giúp bạn.

Đặt màu ô bằng màu ô khác bằng mã VBA


Đặt màu ô bằng màu ô khác bằng mã VBA

Phương pháp VBA dưới đây có thể giúp bạn đặt màu ô bằng màu khác trong Excel. Hãy làm như sau.

1. Trong trang tính, bạn cần kết hợp màu của hai ô, vui lòng nhấp chuột phải vào tab trang tính, sau đó nhấp vào Mã Chế độ xem từ menu chuột phải. Xem ảnh chụp màn hình:

2. Trong phần mở đầu Microsoft Visual Basic cho các ứng dụng , bạn cần sao chép và dán mã VBA vào cửa sổ Mã.

Mã VBA: Đặt màu ô bằng màu ô khác

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Me.Range("C1").Interior.Color = Me.Range("A1").Interior.Color
End Sub

Chú thích: Trong mã, A1 là ô chứa màu tô mà bạn sẽ so khớp với C1. Vui lòng thay đổi chúng dựa trên nhu cầu của bạn.

Sau đó, ô C1 được tô bằng cùng màu của ô A1 như hình minh họa bên dưới.

Kể từ bây giờ, khi màu tô trong A1 được thay đổi, C1 sẽ tự động được khớp với cùng màu.


Các bài liên quan:


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (19)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, ô đang được tham chiếu cho màu sẽ thay đổi màu dựa trên định dạng có điều kiện. Ở trên dường như không hoạt động với điều đó và các ô đích đang để trống. Làm thế nào để đúng? Thanks
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi có cùng một vấn đề. Hoạt động trên các ô không có định dạng có điều kiện nhưng không hoạt động với những ô không có định dạng
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nếu bạn có Excel 2010 trở lên, bạn có thể sử dụng hàm DisplayFormat để trả về màu của ô được định dạng có điều kiện. Xem bên dưới:

Private Sub Worksheet_SelectionChange (ByVal Target As Range)
Me.Range ("C1"). Interior.Color = Me.Range ("A1"). DisplayFormat.Interior.Color
End Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
LP bạn hoàn toàn THẬT TUYỆT VỜI !!!!!! Tôi đã cố gắng trong thời gian dài nhất để có được các ô phù hợp với màu nền định dạng có điều kiện! bạn là một cứu cánh !!!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
điều này có thể được thực hiện trên phạm vi ô hay chỉ cho một ô duy nhất?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, có thể mở rộng điều này sang định dạng có điều kiện không; không khớp với màu được tạo bởi định dạng có điều kiện, nhưng nếu điều kiện định dạng có điều kiện được khớp, thì định dạng có điều kiện được áp dụng sẽ nhận màu của một ô cụ thể. Cố gắng sử dụng điều này trong biểu đồ gantt, tô màu các ngày giữa ngày bắt đầu và ngày kết thúc, nhưng định dạng có điều kiện tạo ra các thanh gantt, sẽ lấy màu của ô chứa Nhiệm vụ (mà tôi đặt theo cách thủ công)
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Vui lòng viết mã để áp dụng định dạng có điều kiện từ cột dữ liệu cho cột tiếp theo? Trong cột A, tôi có một loạt dữ liệu từ A1 đến A1000 bao gồm cả định dạng có điều kiện áp dụng màu trong một số ô. Tôi cần áp dụng những màu đó cho các giá trị trong cột tiếp theo từ B1 đến B1000.
rất nhiều đánh giá cao.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
xin chào, làm thế nào để áp dụng cùng một VBA nhưng trên một phạm vi ô, ví dụ:

tôi muốn có cùng một màu của dải (C8: X8) được áp dụng trên dải (S16: AL16) từng cái một theo cùng một thứ tự (S16 lấy màu của C16, T16 lấy màu của D8 .... vân vân)
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Good day,

Mã VBA dưới đây có thể giúp bạn giải quyết vấn đề. Cám ơn bạn đã góp ý.

Private Sub Worksheet_SelectionChange (ByVal Target As Range)
Làm mờ xSRg, xDRg, xISRg, xIDRg As Range
Dim xFNum càng lâu càng tốt
On Error Resume Next
Đặt xSRg = Range ("C8: X8")
Đặt xDRg = Range ("S16: AL16")
Đối với xFNum = 1 Đến xSRg.count
Đặt xISRg = xSRg.Item (xFNum)
Đặt xIDRg = xDRg.Item (xFNum)
xIDRg.Interior.Color = xISRg.Interior.Color
XFNum tiếp theo
End Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Hi

Tôi đang cố gắng làm điều tương tự, nhưng tôi có hai bảng tính (tệp). Bảng tính 1 là Bảng tính chính nơi dữ liệu được cập nhật theo cách thủ công và tệp (bảng tính 2) đang cân bằng dữ liệu trong cùng một ô với bảng tính 1. Khi tôi mở bảng tính 2, tôi nhận được lời nhắc làm mới với bảng tính 1 không có quảng cáo, nhưng nếu màu của ô bị thay đổi trong bảng tính 1 nó không cập nhật trong bảng tính 2, cũng không có 'dấu gạch chéo' của phông chữ..giúp bạn?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Đây là một khởi đầu tốt cho những gì tôi đang muốn làm. Nhưng tôi đang tìm kiếm thứ gì đó phức tạp hơn một chút

Làm cách nào để điều chỉnh điều này để áp dụng cho nhiều hàng và một dải ô. Ví dụ: tôi có một cột tiêu đề trong Cột B, tôi muốn các ô từ G đến CS khớp với màu của hàng tiêu đề nhưng chỉ là chúng có một cái gì đó trong đó, tức là chữ x. Tôi biết mình có thể viết câu lệnh IF và THEN nhưng làm cách nào để áp dụng nó cho nhiều Hàng mà không cần viết mã cho mỗi hàng.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào Zack,
Xin lỗi không thể giúp bạn với điều đó. Bất kỳ câu hỏi nào về Excel, vui lòng đăng trong diễn đàn của chúng tôi: https://www.extendoffice.com/forum.html.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi đã tìm thấy mã của bạn là 'đặt màu ô bằng một màu ô khác "và nó hoạt động khi tôi đang sử dụng nó trên cùng một trang tính (ví dụ: từ ô A1 đến ô A2). Tôi đang tự hỏi liệu có cách nào để có điều này giống nhau không chức năng từ một trang tính khác (ví dụ: sao chép màu ô từ sheet1! A1 sang sheet2! A1? Bất kỳ trợ giúp nào bạn có thể cung cấp sẽ được đánh giá cao!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Với tư cách là Chris, tôi muốn sao chép màu nền từ một trang tính khác?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Wow - điều này thật tuyệt. Tôi hy vọng bạn có thể giúp tôi điều chỉnh kịch bản của bạn theo nhu cầu của tôi. Tôi cần làm cho ô D10: D200 khớp với màu được định dạng có điều kiện của ô A10: A200 - bạn có thể giúp tôi cách làm việc này được không. Tất cả các ô đều nằm trong cùng một trang tính.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi đã đính kèm ảnh chụp màn hình của tệp mà tôi đang làm việc - Tôi dường như không thể tải lên tệp .xlsm? Trong tệp này, tôi đã sử dụng VBA gốc từ chuỗi này và bây giờ có thể khớp với màu được định dạng có điều kiện của ô A10 trong D10. Làm cách nào để tôi có thể làm cho điều này hoạt động trên một loạt các ô? Tôi muốn lấy màu của dải ô A10: A200 để chuyển sang D10: D200. Ai có thể giúp tôi không? Có một danh sách thả xuống được sử dụng trong cột A nhưng khi chúng tôi đã đặt hàng, chúng tôi cần có thể nhập lại số đơn đặt hàng. Tất cả các mục trong danh sách đều được đặt ở định dạng có điều kiện thành một màu (ví dụ: ORDER OK chuyển sang ô màu xanh lá cây, CLIENT TBC chuyển sang ô màu vàng) nhưng màu sẽ trống khi PO đã được đưa vào.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
hình ảnh không tải lên - hy vọng được đính kèm ngay bây giờ ....
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào - Tôi đang gặp khó khăn khi sử dụng mã của bạn. Tôi đang cố gắng làm chính xác những gì bạn đang nói. Làm cho một ô có cùng màu với một ô khác (không cần bất kỳ giá trị nào) trên cùng một trang tính. Có điều gì đó trong mã đó cần được điều chỉnh?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, tôi đang cố gắng thay đổi ô đến để khớp với ô khác đã được định dạng có điều kiện. Ma cua ban 
Private Sub Worksheet_SelectionChange (ByVal Target As Range)
Me.Range ("C1"). Interior.Color = Me.Range ("A1"). DisplayFormat.Interior.Color
End Sub
Tôi đã thích nghi với
Private Sub Worksheet_SelectionChange (ByVal Target As Range)
Me.Range ("A2: C2"). Interior.Color = Me.Range ("D2"). DisplayFormat.Interior.Color
End Sub

Điều này hoạt động tốt cho chỉ một hàng. Làm cách nào để điều này hoạt động ở tất cả các hàng tôi cần? Nếu tôi lặp lại mã với hàng tiếp theo
Private Sub Worksheet_SelectionChange (ByVal Target As Range)
Me.Range ("A3: C3"). Interior.Color = Me.Range ("D3"). DisplayFormat.Interior.Color
End Sub

Sau đó, tôi gặp lỗi Biên dịch: Đã phát hiện tên không rõ ràng: Worksheet_SelectionChange
Tôi đã thử có mã asPrivate Sub Worksheet_SelectionChange (ByVal Target As Range)
Me.Range ("A2: C10"). Interior.Color = Me.Range ("D2: D10"). DisplayFormat.Interior.ColorEnd Sub

Nhưng tất cả các hàng chỉ được tô màu đen chứ không phải các màu cần thiết. Tôi cần mã hóa gì?
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL