Bôi màu xen kẽ cho các mã giống nhau

Liên hệ QC

hanguyen02

Thành viên mới
Tham gia
25/7/11
Bài viết
6
Được thích
1
Dear all,

Các bác giúp em công thức bôi màu xen kẽ cho các item giống nhau (trong file đính kèm).
-Cụ thể: Em muốn :
Tất cả item A= trắng, Tất cả item B: Xanh, Tất cả item C: Trắng, Tất cả item D: xanh ...cứ xen kẽ nhau như thế.

Em đã áp dụng một số công thức trong Format condition, nhưng nó vẫn không ra được.
Hơn nữa, "ITEM" này của em rất dài & thay đổi liên tục nên khó dùng "Define name"

Ví dụ:
ITEM
A
A
B
B
B
C
D
D
D
E
E
G
G
G
...

Em cảm ơn nhiều!
 

File đính kèm

Dear all,

Các bác giúp em công thức bôi màu xen kẽ cho các item giống nhau (trong file đính kèm).
-Cụ thể: Em muốn :
Tất cả item A= trắng, Tất cả item B: Xanh, Tất cả item C: Trắng, Tất cả item D: xanh ...cứ xen kẽ nhau như thế.

Em đã áp dụng một số công thức trong Format condition, nhưng nó vẫn không ra được.
Hơn nữa, "ITEM" này của em rất dài & thay đổi liên tục nên khó dùng "Define name"
Bạn quét chọn vùng B4:B22 (quét chọn từ B4 đến B22 sao cho ô B4 là ô hiện hành - có màu khác các ô còn lại), chọn Format\Conditional Formatting, nhập công thức sau (Formula is):
Mã:
=MOD(CODE(B4),2)
và thiết lập định dạng tô nền màu xanh.
 

File đính kèm

Bạn quét chọn vùng B4:B22 (quét chọn từ B4 đến B22 sao cho ô B4 là ô hiện hành - có màu khác các ô còn lại), chọn Format\Conditional Formatting, nhập công thức sau (Formula is):
Mã:
=MOD(CODE(B4),2)
và thiết lập định dạng tô nền màu xanh.
Cám ơn nhiều.
Nhưng bây giờ
A: x1234
B: 00111
C: aac1
Nghĩa là A, B, C không có quy luật, muốn là khi số ct ở cột A khác nhau thì tô mày trăng, xanh xen kẻ. thì có dùng CF được không.
 
Cám ơn nhiều.
Nhưng bây giờ
A: x1234
B: 00111
C: aac1
Nghĩa là A, B, C không có quy luật, muốn là khi số ct ở cột A khác nhau thì tô mày trăng, xanh xen kẻ. thì có dùng CF được không.
Trường hợp này theo em thì có lẽ phải dùng đến VBA thôi chứ CF thì em bó tay.
 
Từ ngày vào đây em học được nhiều điều hay quá!! Cảm ơn các bác đã tận tình chỉ bảo!!!
 
Nếu dữ liệu của bạn không được sắp xếp theo thứ tự thì bạn có thể làm theo cách này:
Mã:
 =MOD(SUMPRODUCT(1*(IF(Data<>OFFSET(Data,-1,),ROW(Data),10^9)<=ROW())),2)
Với Data là cột dữ liệu của bạn. Dòng đầu tiên của Data phải lớn hơn 1.
 

File đính kèm

Lần chỉnh sửa cuối:
Nếu dữ liệu của bạn không được sắp xếp theo thứ tự thì bạn có thể làm theo cách này:
Mã:
 =MOD(SUMPRODUCT(1*(IF(Data<>OFFSET(Data,-1,),ROW(Data),10^9)<=ROW())),2)
Với Data là cột dữ liệu của bạn. Dòng đầu tiên của Data phải lớn hơn 1.
Với dữ liệu chạy trên ex 2007 có > 200.000 dòng thì dùng cách này có nặng?
Nếu dùng VBA thì Thắng có cách nào tối ưu.
Mình đang dùng VBA như sau.
1/ Chỉ CF dòng đầu.
2/ Thêm 1 cột phụ bằng Array, dùng VBA.
3/ Copy format dòng đầu xuống hết.
4/ Hide cột phụ.
Và khi tạo mới lại thì clear từ dòng kế. Giữ lại format dòng đầu.
Nhưng cách trên cũng khá chậm.
Cám ơn các bạn nhiều.
 
Web KT

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

Back
Top Bottom