Tô Màu Theo điều Kiện Bằng VBA? | Giải Pháp Excel
Có thể bạn quan tâm
- Trang chủ Có gì mới Hoạt động gần nhất Tác giả
- Diễn đàn Tìm bài viết mới Tìm theo chuyên mục
- Video Video về Excel Video về tin học khác Tin tức về tin học chung
- Thông tin mới Tìm bài mới Tài Nguyên Mới Hoạt động gần nhất
- Tài nguyên Đánh giá mới nhất Tìm tài nguyên
- Đóng góp
Tìm kiếm
Mọi nơi Đề tài Diễn đàn này Đề tài này Chỉ tìm trong tiêu đề Tìm kiếm Tìm nâng cao…- Tìm bài viết mới
- Tìm theo chuyên mục
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
- Khách ơi! GPE thông tin đến bạn ấn phẩm "lập trình VBA trong Excel": - Phần cơ bản - Phần Nâng Cao - VBA trong Excel - Cải thiện và tăng tốc
- Trang chủ
- Diễn đàn
- Lập Trình với Excel
- Lập Trình với Excel
- Thread starter Miền Cát Trắng
- Ngày gửi 3/1/14
Miền Cát Trắng
Thành viên hoạt động
Tham gia 18/5/13 Bài viết 171 Được thích 37 Xin kính chào mọi người. Tôi đang gặp phải một vấn đề như đã nêu rõ trong file đính kèm. Nếu sử dụng chức năng CF thì tôi có thể làm được nhưng tôi muốn tìm hiểu khi làm bằng vba. Mong mọi người giúp đỡ. Xin cảm ơn!File đính kèm
- Tomau.xls 24 KB · Đọc: 465
- 1
- 2
- 3
Go to page
Tiếp tục Tiếp Last Sắp xếp theo thời gian sắp xếp theo bầu chọnBa Tê
Cạo Rồi Khỏi Gội
Tham gia 5/5/09 Bài viết 12,124 Được thích 17,588 Giới tính NamMiền Cát Trắng đã viết: Xin kính chào mọi người. Tôi đang gặp phải một vấn đề như đã nêu rõ trong file đính kèm. Nếu sử dụng chức năng CF thì tôi có thể làm được nhưng tôi muốn tìm hiểu khi làm bằng vba. Mong mọi người giúp đỡ. Xin cảm ơn! Nhấp chuột vào đây để mở rộng...Muốn VBA thì thử chạy Sub này coi sao: PHP:Sao chép. Public Sub GPE() Dim Rng As Range, Cll As Range, DK As Long With Sheet1 DK = .[C5].Value .[C8:K1000].Interior.ColorIndex = 0 Set Rng = .Range(.[C8], .[C8].End(xlDown)) For Each Cll In Rng If Cll.Value = DK Then Cll.Resize(, 9).Interior.ColorIndex = 6 MsgBox "Ma oi, Ma oi ..... Cuu con!" End If Next Cll End With Set Rng = Nothing End Sub Upvote 0 M
Miền Cát Trắng
Thành viên hoạt động
Tham gia 18/5/13 Bài viết 171 Được thích 37Ba Tê đã viết: Muốn VBA thì thử chạy Sub này coi sao: PHP:Sao chép. Public Sub GPE() Dim Rng As Range, Cll As Range, DK As Long With Sheet1 DK = .[C5].Value .[C8:K1000].Interior.ColorIndex = 0 Set Rng = .Range(.[C8], .[C8].End(xlDown)) For Each Cll In Rng If Cll.Value = DK Then Cll.Resize(, 9).Interior.ColorIndex = 6 MsgBox "Ma oi, Ma oi ..... Cuu con!" End If Next Cll End With Set Rng = Nothing End Sub Nhấp chuột vào đây để mở rộng...Trước hết xin cảm Thầy đã vui vẻ giúp đỡ! Về cơ bản thì code của Thầy viết rất đúng ý với em đã nêu tuy nhiên còn một chút xíu nữa mong Thầy sửa giúp cho ạ. Đó là các cột màu xanh trong khung vẫn giữ nguyên màu xanh. Nghĩa là điều kiện màu vàng chỉ hoạt động trong vùng [C8:E17,G8:I17,K8:K17] thôi ạ! ------------------ Em định thêm một dòng code tô lại các vùng màu xanh này. Nhưng nếu như vậy thì nghĩa phải thêm 1 công đoạn phải không ạ. Mong Thầy chỉ dẫn thêm để không phải thêm công đoạn này nữa ạ. Cảm ơn Thầy! Lần chỉnh sửa cuối: 3/1/14 Upvote 0
Ba Tê
Cạo Rồi Khỏi Gội
Tham gia 5/5/09 Bài viết 12,124 Được thích 17,588 Giới tính NamMiền Cát Trắng đã viết: Trước hết xin cảm Thầy đã vui vẻ giúp đỡ! Về cơ bản thì code của Thầy viết rất đúng ý với em đã nêu tuy nhiên còn một chút xíu nữa mong Thầy sửa giúp cho ạ. Đó là các cột màu xanh trong khung vẫn giữ nguyên màu xanh. Nghĩa là điều kiện màu vàng chỉ hoạt động trong vùng [C8:E17,G8:I17,K8:K17] thôi ạ! ------------------ Em định thêm một dòng code tô lại các vùng màu xanh này. Nhưng nếu như vậy thì nghĩa phải thêm 1 công đoạn phải không ạ. Mong Thầy chỉ dẫn thêm để không phải thêm công đoạn này nữa ạ. Cảm ơn Thầy! Nhấp chuột vào đây để mở rộng...Xem Cái "má ơi...má ơi ..." này thử xem, sao nhiều cái "oái oăm" vậy? PHP:Sao chép. Public Sub GPE() Dim Rng As Range, Cll As Range, DK As Long, MaOI As Range With Sheet1 DK = .[C5].Value Set MaOI = Union(.[C8:E17], .[G8:I17], .[K8:K17]) MaOI.Interior.ColorIndex = 0 Set Rng = .Range(.[C8], .[C8].End(xlDown)) For Each Cll In Rng If Cll.Value = DK Then Set MaOI = Union(Cll.Resize(, 3), Cll.Offset(, 4).Resize(, 3), Cll.Offset(, 8)) MaOI.Interior.ColorIndex = 6 MsgBox "Ma oi, Ma oi ..... Cuu con!" End If Next Cll End With Set Rng = Nothing Set MaOI = Nothing End Sub Upvote 0 M
Miền Cát Trắng
Thành viên hoạt động
Tham gia 18/5/13 Bài viết 171 Được thích 37Ba Tê đã viết: Xem Cái "má ơi...má ơi ..." này thử xem, sao nhiều cái "oái oăm" vậy? PHP:Sao chép. Public Sub GPE() Dim Rng As Range, Cll As Range, DK As Long, MaOI As Range With Sheet1 DK = .[C5].Value Set MaOI = Union(.[C8:E17], .[G8:I17], .[K8:K17]) MaOI.Interior.ColorIndex = 0 Set Rng = .Range(.[C8], .[C8].End(xlDown)) For Each Cll In Rng If Cll.Value = DK Then Set MaOI = Union(Cll.Resize(, 3), Cll.Offset(, 4).Resize(, 3), Cll.Offset(, 8)) MaOI.Interior.ColorIndex = 6 MsgBox "Ma oi, Ma oi ..... Cuu con!" End If Next Cll End With Set Rng = Nothing Set MaOI = Nothing End Sub Nhấp chuột vào đây để mở rộng...Cảm ơn Thầy!! Em đã thử...kết quả là như mong đợi! Năm mới xin kính chúc Thầy sức khỏe tốt và công các tốt! Vạn sự như ý! Upvote 0 M
Miền Cát Trắng
Thành viên hoạt động
Tham gia 18/5/13 Bài viết 171 Được thích 37Ba Tê đã viết: Xem Cái "má ơi...má ơi ..." này thử xem, sao nhiều cái "oái oăm" vậy? PHP:Sao chép. Public Sub GPE() Dim Rng As Range, Cll As Range, DK As Long, MaOI As Range With Sheet1 DK = .[C5].Value Set MaOI = Union(.[C8:E17], .[G8:I17], .[K8:K17]) MaOI.Interior.ColorIndex = 0 Set Rng = .Range(.[C8], .[C8].End(xlDown)) For Each Cll In Rng If Cll.Value = DK Then Set MaOI = Union(Cll.Resize(, 3), Cll.Offset(, 4).Resize(, 3), Cll.Offset(, 8)) MaOI.Interior.ColorIndex = 6 MsgBox "Ma oi, Ma oi ..... Cuu con!" End If Next Cll End With Set Rng = Nothing Set MaOI = Nothing End Sub Nhấp chuột vào đây để mở rộng...Nhưng mà với cái đoạn này của Thầy: Mã:Sao chép. Set MaOI = Union([B].[C8:E17], .[G8:I17], .[K8:K17][/B]) Mà kết hợp với đoạn này: Mã:Sao chép. Set Rng = .Range(.[C8], .[C8][COLOR=#ff0000][B].End(xlDown)[/B][/COLOR]) thì em nghĩ là chưa hợp lý bởi vì nếu điều kiện khi tô màu vàng ngoài vùng MaOI thì sẽ không thể trở về 0 được khi ngoài vùng MaOI này không còn đúng với điều kiện ạ. Upvote 0
Ba Tê
Cạo Rồi Khỏi Gội
Tham gia 5/5/09 Bài viết 12,124 Được thích 17,588 Giới tính NamMiền Cát Trắng đã viết: Nhưng mà với cái đoạn này của Thầy: Mã:Sao chép. Set MaOI = Union([B].[C8:E17], .[G8:I17], .[K8:K17][/B]) Mà kết hợp với đoạn này: Mã:Sao chép. Set Rng = .Range(.[C8], .[C8][COLOR=#ff0000][B].End(xlDown)[/B][/COLOR]) thì em nghĩ là chưa hợp lý bởi vì nếu điều kiện khi tô màu vàng ngoài vùng MaOI thì sẽ không thể trở về 0 được khi ngoài vùng MaOI này không còn đúng với điều kiện ạ. Nhấp chuột vào đây để mở rộng...Chời ơi! Chỉ làm theo ví dụ, thực tế ra sao thì tự chỉnh đi. Híc!
Nghĩa là điều kiện màu vàng chỉ hoạt động trong vùng [C8:E17,G8:I17,K8:K17] thôi ạ! Nhấp chuột vào đây để mở rộng...Biểu sao làm vậy, kết quả có đúng không? Upvote 0 M
Miền Cát Trắng
Thành viên hoạt động
Tham gia 18/5/13 Bài viết 171 Được thích 37 Đúng quá rồi mờ Thầy! hihi Upvote 0concogia
Gội rồi mới Cạo
Tham gia 17/9/09 Bài viết 3,412 Được thích 6,876 Má ơi !!! Cái bài này cứ Má ơi như lúc đầu, Má ơi xong thì chèn 2 dòng này vào cho nhẹ nhàngRng.Offset(, 3).Interior.ColorIndex = 50 Rng.Offset(, 7).Interior.ColorIndex = 50 Nhấp chuột vào đây để mở rộng...Code dzì: Mã:Sao chép. Public Sub GPE() Dim Rng As Range, Cll As Range, DK As Long With Sheet1 DK = .[C5].Value .[C8:K1000].Interior.ColorIndex = 0 Set Rng = .Range(.[C8], .[C8].End(xlDown)) For Each Cll In Rng If Cll.Value = DK Then Cll.Resize(, 9).Interior.ColorIndex = 6 MsgBox "Ma oi, Ma oi ..... Cuu con!" End If Next Cll Rng.Offset(, 3).Interior.ColorIndex = 50 Rng.Offset(, 7).Interior.ColorIndex = 50 End With Set Rng = Nothing End Sub Híc, Má ơi Thân Upvote 0
Ba Tê
Cạo Rồi Khỏi Gội
Tham gia 5/5/09 Bài viết 12,124 Được thích 17,588 Giới tính Namconcogia đã viết: Má ơi !!! Cái bài này cứ Má ơi như lúc đầu, Má ơi xong thì chèn 2 dòng này vào cho nhẹ nhàng Code dzì: Mã:Sao chép. Public Sub GPE() Dim Rng As Range, Cll As Range, DK As Long With Sheet1 DK = .[C5].Value .[C8:K1000].Interior.ColorIndex = 0 Set Rng = .Range(.[C8], .[C8].End(xlDown)) For Each Cll In Rng If Cll.Value = DK Then Cll.Resize(, 9).Interior.ColorIndex = 6 MsgBox "Ma oi, Ma oi ..... Cuu con!" End If Next Cll Rng.Offset(, 3).Interior.ColorIndex = 50 Rng.Offset(, 7).Interior.ColorIndex = 50 End With Set Rng = Nothing End Sub Híc, Má ơi Thân Nhấp chuột vào đây để mở rộng...Lỡ "má ơi" muốn thay đổi 2 cột F và J bằng cái màu "má ơi" nào khác tuỳ thích bằng thủ công thì "má ơi... má ơi" tiếp tục. Híc! Ẹc.. Upvote 0
concogia
Gội rồi mới Cạo
Tham gia 17/9/09 Bài viết 3,412 Được thích 6,876Ba Tê đã viết: Lỡ "má ơi" muốn thay đổi 2 cột F và J bằng cái màu "má ơi" nào khác tuỳ thích bằng thủ công thì "má ơi... má ơi" tiếp tục. Híc! Ẹc.. Nhấp chuột vào đây để mở rộng...Thì trước khi Má Ơi tìm em trùng tô màu vàng, mình cho chạy theo cột trong vùng dữ liệu,Má Ơi điểm mặt cột nào có màu & màu gì gom bỏ vào một biến để dành đó Má ơi các việc phải má ơi Má Ơi xong các em trùng để tô vàng, ta Má ơi các cột có màu tô thủ công của chủ topic. Híc Thân Upvote 0 G
giangintem
Thành viên mới
Tham gia 19/4/11 Bài viết 22 Được thích 4 Xin chào cả nhà Tôi đang muốn tô màu theo từng vùng (như file đính kèm). Tôi muốn tìm hiểu khi sử dụng bằng vba. Mong mọi người giúp đỡ. Xin cảm ơn!File đính kèm
- ToMau_Vung.xlsx 11.3 KB · Đọc: 44
Nhattanktnn
Thành viên gắn bó
Tham gia 11/11/16 Bài viết 3,155 Được thích 4,129 Donate (Momo) Giới tính Namgiangintem đã viết: Xin chào cả nhà Tôi đang muốn tô màu theo từng vùng (như file đính kèm). Tôi muốn tìm hiểu khi sử dụng bằng vba. Mong mọi người giúp đỡ. Xin cảm ơn! Nhấp chuột vào đây để mở rộng...Record macro thôi! Chứ đề không có điều kiện này thích tô sao tô rồi Upvote 0
Cu Tồ
Tìm đến kiến thức! ꧁༺ Cu Tồ ༻꧂
Tham gia 6/5/20 Bài viết 735 Được thích 347giangintem đã viết: từng vùng Nhấp chuột vào đây để mở rộng...không có điều kiện cụ thể nào cho vùng nào,thì bạn xem cái code phía trên ấy lệnh tô màu đó rồi cứ phang thẳng cái vùng đó cho màu đó là được chứ nhìn cái file của bạn thì chưa biết làm như thế nào cho tối ưu cả Mã:Sao chép. sheet1.Range("A34:G44").Interior.ColorIndex = 6 Upvote 0 G
giangintem
Thành viên mới
Tham gia 19/4/11 Bài viết 22 Được thích 4Cu Tồ đã viết: không có điều kiện cụ thể nào cho vùng nào,thì bạn xem cái code phía trên ấy lệnh tô màu đó rồi cứ phang thẳng cái vùng đó cho màu đó là được chứ nhìn cái file của bạn thì chưa biết làm như thế nào cho tối ưu cả View attachment 248284 Mã:Sao chép. sheet1.Range("A34:G44").Interior.ColorIndex = 6 Nhấp chuột vào đây để mở rộng...Cám ơn Bạn đã hướng dẫn. Ý mình đây là có đoạn code nào hướng dẫn tô màu theo vùng. Vd: từ ô A6 -> G12: tô màu xanh dương từ ô A13 -> G21: tô màu vàng từ ô A22 -> G44: tô màu xanh lá Upvote 0
Cu Tồ
Tìm đến kiến thức! ꧁༺ Cu Tồ ༻꧂
Tham gia 6/5/20 Bài viết 735 Được thích 347giangintem đã viết: Cám ơn Bạn đã hướng dẫn. Ý mình đây là có đoạn code nào hướng dẫn tô màu theo vùng. Vd: từ ô A6 -> G12: tô màu xanh dương từ ô A13 -> G21: tô màu vàng từ ô A22 -> G44: tô màu xanh lá Nhấp chuột vào đây để mở rộng...Mã:Sao chép. sheet1.Range("A34:G44") Đây là vùng tham chiếu bạn có thể sửa nó tùy ý Mã:Sao chép. .Interior.ColorIndex = 6 Đây là chỉ số màu trong bảng màu,cái này ít người nhớ hết chỉ có mấy màu hay dùng thì nhớ.có cách khác là dùng vbred .... cũng được.nhưng để nói code hướng dẫn thì chả biết nói như thế nào.bạn ghi lại maro tô màu các vùng bạn muốn rồi chỉ cần quan tâm đến vùng mà nó tô màu trong code + mã màu và lệnh tô mà thì sẽ hiểu mà Upvote 0 G
giangintem
Thành viên mới
Tham gia 19/4/11 Bài viết 22 Được thích 4 Mình đã tô được màu từng cùng cố định. Nhưng mình muốn dùng code để tự động tô mà không chỉnh từ vùng Upvote 0Cu Tồ
Tìm đến kiến thức! ꧁༺ Cu Tồ ༻꧂
Tham gia 6/5/20 Bài viết 735 Được thích 347 End Sub[/CODE]giangintem đã viết: Mình đã tô được màu từng cùng cố định. Nhưng mình muốn dùng code để tự động tô mà không chỉnh từ vùng Nhấp chuột vào đây để mở rộng...tự đông kiểu như thế nào đã chứ,tự động cũng cần có điêu kiện để giới hạn vùng,chứ còn không nó chạy tùm lum làm sao bạn? Upvote 0
Nhattanktnn
Thành viên gắn bó
Tham gia 11/11/16 Bài viết 3,155 Được thích 4,129 Donate (Momo) Giới tính NamCu Tồ đã viết: End Sub[/CODE] tự đông kiểu như thế nào đã chứ,tự động cũng cần có điêu kiện để giới hạn vùng,chứ còn không nó chạy tùm lum làm sao bạn? Nhấp chuột vào đây để mở rộng...Cái tối thiểu để tính toán "tự động" dù là công thức hay vba là cái điều kiện mà bạn ấy cũng không trình bày ra. Vậy mà bạn ấy cứ muốn "tự động", không hiểu tự động sao luôn Upvote 0
Cu Tồ
Tìm đến kiến thức! ꧁༺ Cu Tồ ༻꧂
Tham gia 6/5/20 Bài viết 735 Được thích 347Nhattanktnn đã viết: Vậy mà bạn ấy cứ muốn "tự động", không hiểu tự động sao luôn Nhấp chuột vào đây để mở rộng...ông hộ trợ bạn ấy đi Upvote 0
- 1
- 2
- 3
Go to page
Tiếp tục Tiếp Last Bạn phải đăng nhập hoặc đăng ký để trả lời bài viết tại đây.Bài viết mới nhất
- Question
- Toanke063
- Thứ sáu lúc 12:11
- Lập Trình với Excel
- TRANTHEJP
- Thứ sáu lúc 14:46
- Định dạng, trình bày, in ấn bảng tính
- nghiemcongdien
- 9/11/24
- Google Spreadsheets
- ginchanle
- Hôm qua, lúc 15:46
- Hàm và công thức Excel
- Question
- Văn Toàn 1996
- Thứ năm lúc 15:49
- Lập Trình với Excel
- thanhthang0201
- Thứ bảy lúc 17:56
- Hàm và công thức Excel
- Đã giải quyết
- HeSanbi
- 2/6/23
- Lập Trình với Excel
- kopite
- Thứ bảy lúc 17:30
- Hàm và công thức Excel
- Question
- ongke0711
- 6/10/24
- Lập Trình với Excel
- VUONGTNQN
- Thứ sáu lúc 22:26
- Hàm và công thức Excel
- Question
- tn001
- 15/4/13
- Lập Trình với Excel
- Question
- binhtv69
- Thứ sáu lúc 09:01
- Lập Trình với Excel
- dangvandang
- 28/10/23
- Các Add-ins cho excel
- noisy
- Thứ bảy lúc 09:19
- Giải thích, gỡ rối, xử lý lỗi công thức
- daoduy88
- Thứ năm lúc 12:01
- VBA trong Excel – Cải thiện và tăng tốc
- hoaiantrinh
- Thứ tư lúc 16:32
- Hỏi đáp những vấn đề khác
- khzaof
- Thứ sáu lúc 23:45
- Pivot table
- Question
- Tienvinh191
- 4/4/24
- Lập Trình với Excel
- Question
- lvh1064
- Thứ năm lúc 18:45
- Lập Trình với Excel
- Question
- thaibao13d3bk
- 18/8/20
- Lập Trình với Excel
Thành viên có số lượng bài viết cao nhất tháng
- Hoàng Tuấn 868 152
- ptm0412 65
- VetMini 44
- ongke0711 36
- Tuấn Bụng Bự 31
- bebo021999 31
- befaint 30
- HUONGHCKT 26
- hoangtuaotrang_hp_vn 26
- SA_DQ 26
- BuiQuangThuan 25
- HeSanbi 25
- huuthang_bd 18
- huhumalu 17
- cantl 16
- Nguyễn Diêu Hiền 15
- CHAOQUAY 14
- DeTong 14
- batista911 13
- phuongnam366377 13
Thành viên có điểm tương tác cao nhất tháng
- Hoàng Tuấn 868 123
- VetMini 62
- HeSanbi 61
- HUONGHCKT 51
- ptm0412 46
- ongke0711 44
- HieuCD 39
- BuiQuangThuan 39
- befaint 37
- SA_DQ 32
- huuthang_bd 31
- bebo021999 29
- hoangtuaotrang_hp_vn 25
- Phuocam 19
- huhumalu 15
- PhanTuHuong 12
- CHAOQUAY 12
- phuongnam366377 12
- DeTong 10
- Nhattanktnn 10
- Trang chủ
- Diễn đàn
- Lập Trình với Excel
- Lập Trình với Excel
- Website này sử dụng cookies. Tiếp tục sử dụng trang này, đồng nghĩa với việc bạn chấp nhận website sử dụng cookies. Chấp nhận Tìm hiểu thêm.…
Từ khóa » Tô Màu ô Trong Excel Bằng Vba
-
Tự động Tô Màu Dòng Của ô được Chọn Trong Bảng Bằng VBA
-
Cách Tô Màu Dữ Liệu đang Tìm Kiếm Trong Một Vùng Bằng VBA
-
Cách định Dạng Dữ Liệu Bảng Tính Excel Bằng VBA
-
Vấn đề Tô Màu Gặp Khi Sử Dụng Code Trong Record Macro Của Excel
-
Cách Tự động Tô Màu Hàng, Cột Trong Excel - Công An Tỉnh Bắc Kạn
-
Tự động Tô Màu Các ô Có Chứa Công Thức Trong Excel
-
Tự Động Tô Màu Hàng Trong Excel Khi Được Chọn
-
Làm Cách Nào để Thay đổi Màu ô Khi ô được Nhấp Hoặc Chọn Trong ...
-
Cách Chọn Và Tô Sáng Các ô Trống Trong Excel - KetoanMVB
-
TÔ MÀU Trong Excel Theo điều Kiện.TÔ MÀU Dữ Liệu TRÙNG Nhau ...
-
Tự Động Tô Màu Nguyên Dòng Khi Được Chọn Trong Excel
-
Làm Cách Nào để đặt Màu ô Bằng Màu ô Khác Trong Excel?
-
Tô Màu Gradient Cho ô Trong Excel để Tạo Giao Diện Khác Biệt