Nhờ giúp đỡ tô màu cho các ô (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

hung2412

Thành viên tích cực
Tham gia
5/8/08
Bài viết
929
Được thích
240
Giới tính
Nam
Mình nhờ các bạn GPE giúp mình vấn đề này với:
- Tô màu cho các ô ở cột D trong Sheet 2 tương ứng với màu các ô ở cột D trong Sheet 1 (Khi thỏa mãn điều kiện trên cùng một dòng cột A, cột B, cột D ở Sheet 1 trùng với các ô trên cùng một dòng cột A, cột B, cột D ở Sheet 2).
- Tô màu cho các ô ở cột C cũng tương tự như cột D ở trên.

P/s: Có File đính kèm.
 

File đính kèm

Mình nhờ các bạn GPE giúp mình vấn đề này với:
- Tô màu cho các ô ở cột D trong Sheet 2 tương ứng với màu các ô ở cột D trong Sheet 1 (Khi thỏa mãn điều kiện trên cùng một dòng cột A, cột B, cột D ở Sheet 1 trùng với các ô trên cùng một dòng cột A, cột B, cột D ở Sheet 2).
- Tô màu cho các ô ở cột C cũng tương tự như cột D ở trên.

P/s: Có File đính kèm.
Bạn làm như sau:
Chọn ô C1 sheet 2. Tạo 1 name DK với công thức sau:
Mã:
=MATCH('2'!$A1&'2'!$B1&'2'!C1,'1'!$A$1:$A$48&'1'!$B$1:$B$48&'1'!C$1:C$48,0)
Tạo Conditional Formatting với công thức sau (Ô hiện hành vẫn là C1 sheet 2)
Mã:
=AND(DK,C1<>"")
Copy format của ô C1 cho cột C, D.
 

File đính kèm

Mình nhờ các bạn GPE giúp mình vấn đề này với:
- Tô màu cho các ô ở cột D trong Sheet 2 tương ứng với màu các ô ở cột D trong Sheet 1 (Khi thỏa mãn điều kiện trên cùng một dòng cột A, cột B, cột D ở Sheet 1 trùng với các ô trên cùng một dòng cột A, cột B, cột D ở Sheet 2).
- Tô màu cho các ô ở cột C cũng tương tự như cột D ở trên.

P/s: Có File đính kèm.
Bài này dùng code thì cũng khá đơn giản. Nhưng dữ liệu ít thì xài CF cho khỏe. Nếu xài công thức thì nên nối luôn 4 cột cho chắc ăn.
 
Bạn làm như sau:
Chọn ô C1 sheet 2. Tạo 1 name DK với công thức sau:
Mã:
=MATCH('2'!$A1&'2'!$B1&'2'!C1,'1'!$A$1:$A$48&'1'!$B$1:$B$48&'1'!C$1:C$48,0)
Tạo Conditional Formatting với công thức sau (Ô hiện hành vẫn là C1 sheet 2)
Mã:
=AND(DK,C1<>"")
Copy format của ô C1 cho cột C, D.
Bạn ơi, có sự nhầm lẫn ở đây rồi, đề bài ở đây là Tô màu cho các ô ở cột D trong Sheet 2 tương ứng với màu các ô ở cột D trong Sheet 1 khi thỏa mãn điều kiện, như bạn hướng dẫn ở đây là cứ cả dòng giống nhau ở cả 2 Sheet thì tô màu cho ô cột D Sheet 2 mà không "ngó" tới màu ô nguồn cột D Sheet 1. Hic
 
Mình nhờ các bạn GPE giúp mình vấn đề này với:
- Tô màu cho các ô ở cột D trong Sheet 2 tương ứng với màu các ô ở cột D trong Sheet 1 (Khi thỏa mãn điều kiện trên cùng một dòng cột A, cột B, cột D ở Sheet 1 trùng với các ô trên cùng một dòng cột A, cột B, cột D ở Sheet 2).
- Tô màu cho các ô ở cột C cũng tương tự như cột D ở trên.

P/s: Có File đính kèm.
Xài tạm cái code luxubu này. Khi nào có cái gì ngọt hơn thì bỏ qua
PHP:
Sub ToMau()
Dim d1 As Object, i As Long
Dim d2 As Object, j As Long
Dim data1, data2, tmp, tmp2
Set d1 = CreateObject("scripting.dictionary")
Set d2 = CreateObject("scripting.dictionary")
With Sheets("1")
   data1 = .Range(.[A1], .[A65536].End(3)).Resize(, 4).Value
End With
With Sheets("2")
   data2 = .Range(.[A1], .[A65536].End(3)).Resize(, 4).Value
End With
For i = 1 To UBound(data1)
   tmp = data1(i, 1) & data1(i, 2) & data1(i, 3) & data1(i, 4)
   d1.Item(tmp) = Sheets("1").Cells(i, 3).Interior.ColorIndex
   d2.Item(tmp) = Sheets("1").Cells(i, 4).Interior.ColorIndex
Next
For i = 1 To UBound(data2)
   tmp = data2(i, 1) & data2(i, 2) & data2(i, 3) & data2(i, 4)
   Sheets("2").Cells(i, 3).Interior.ColorIndex = d1.Item(tmp)
   Sheets("2").Cells(i, 4).Interior.ColorIndex = d2.Item(tmp)
Next
End Sub
 
Xài tạm cái code luxubu này. Khi nào có cái gì ngọt hơn thì bỏ qua
PHP:
Sub ToMau()
Dim d1 As Object, i As Long
Dim d2 As Object, j As Long
Dim data1, data2, tmp, tmp2
Set d1 = CreateObject("scripting.dictionary")
Set d2 = CreateObject("scripting.dictionary")
With Sheets("1")
   data1 = .Range(.[A1], .[A65536].End(3)).Resize(, 4).Value
End With
With Sheets("2")
   data2 = .Range(.[A1], .[A65536].End(3)).Resize(, 4).Value
End With
For i = 1 To UBound(data1)
   tmp = data1(i, 1) & data1(i, 2) & data1(i, 3) & data1(i, 4)
   d1.Item(tmp) = Sheets("1").Cells(i, 3).Interior.ColorIndex
   d2.Item(tmp) = Sheets("1").Cells(i, 4).Interior.ColorIndex
Next
For i = 1 To UBound(data2)
   tmp = data2(i, 1) & data2(i, 2) & data2(i, 3) & data2(i, 4)
   Sheets("2").Cells(i, 3).Interior.ColorIndex = d1.Item(tmp)
   Sheets("2").Cells(i, 4).Interior.ColorIndex = d2.Item(tmp)
Next
End Sub
Bạn tài thật, quá hay, đúng theo ý mình./-*+/
 
Code này cùi hơn Code của Anh Hải:
[GPECODE=vb]Sub Tomau()
Dim Dic1 As Object
Dim Dic2 As Object
Dim rng As Range
Set Dic1 = CreateObject("Scripting.Dictionary")
Set Dic2 = CreateObject("Scripting.Dictionary")
Sheets(1).Select
For Each rng In Range([A1], [A65536].End(xlUp))
Dic1.Item(rng.Value & rng.Offset(, 2).Value) = rng.Offset(, 2).Interior.ColorIndex
Dic2.Item(rng.Value & rng.Offset(, 3).Value) = rng.Offset(, 3).Interior.ColorIndex
Next
Sheets(2).Select
For Each rng In Range([A1], [A65536].End(xlUp))
rng.Offset(, 2).Interior.ColorIndex = Dic1.Item(rng.Value & rng.Offset(, 2).Value)
rng.Offset(, 3).Interior.ColorIndex = Dic2.Item(rng.Value & rng.Offset(, 3).Value)
Next
End Sub[/GPECODE]
 
Web KT

Bài viết mới nhất

Back
Top Bottom