Dùng CF để tô màu cho công thức mảng (1 người xem)

Liên hệ QC

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

AnhThu-1976

Thành viên tích cực
Tham gia
17/10/14
Bài viết
1,065
Được thích
175
Tại ô F1, em có công thức mãng (có cặp { }), em muốn tô màu cho công thức này
Trong CF em đặt công thức
=LEFT($F$1;1)="{"
nhưng nó không ra kế quả, nhờ anh chị xem giúp, em cảm ơn!
 
Tại ô F1, em có công thức mãng (có cặp { }), em muốn tô màu cho công thức này
Trong CF em đặt công thức
=LEFT($F$1;1)="{"
nhưng nó không ra kế quả, nhờ anh chị xem giúp, em cảm ơn!
Hổng có vụ đó đâu. Phải dựa vào 1 điều kiện cụ thể nào đó mới được (chẳng hạn là dựa vào những ràng buộc trong công thức mảng của bạn)
Tiếc là không thấy công thức mảng + không có file + không biết tô màu theo điều kiện gì = không giúp được
 
Hổng có vụ đó đâu. Phải dựa vào 1 điều kiện cụ thể nào đó mới được (chẳng hạn là dựa vào những ràng buộc trong công thức mảng của bạn)
Tiếc là không thấy công thức mảng + không có file + không biết tô màu theo điều kiện gì = không giúp được
Vậy em nhờ Thầy làm giúp, em có mô tả trong file đính kèm. Em cảm ơn
 

File đính kèm

Vậy em nhờ Thầy làm giúp, em có mô tả trong file đính kèm. Em cảm ơn
Bạn thử:
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$F$1" Then
      Target.Interior.ColorIndex = none
      If Not Target.HasArray Then Target.Interior.ColorIndex = 3
    End If
End Sub
 
Nếu có 2 ô, giả sử F1, và G1 thì code sửa như thế nào
Cảm ơn bạn!
 
Nếu có 2 ô, giả sử F1, và G1 thì code sửa như thế nào
Cảm ơn bạn!
Bạn sửa lại 1 tẹo như thế này xem
HTML:
Private Sub Worksheet_Change(ByVal Rng As Range)
    Dim cll As Range
Set Rng = Range("F1:G1")
Rng.Interior.ColorIndex = none
For Each cll In Rng
    If Not cll.HasArray Then cll.Interior.ColorIndex = 3
Next
End Sub
 
Bạn sửa lại 1 tẹo như thế này xem
HTML:
Private Sub Worksheet_Change(ByVal Rng As Range)
    Dim cll As Range
Set Rng = Range("F1:G1")
Rng.Interior.ColorIndex = none
For Each cll In Rng
    If Not cll.HasArray Then cll.Interior.ColorIndex = 3
Next
End Sub
- Bạn có thử code chưa vậy? Cái dòng này: Rng.Interior.ColorIndex = none
- Gán vào 1 vùng cụ thể (Set Rng = Range("F1:G1")), rồi người ta lại giả sử: "Muốn kiểm tra nhiều vùng khác nhau thì sao ạ?"
Theo tui thì "chơi" kiểu này:
Quét chọn 1 hoặc nhiều vùng muốn tô màu kiểm tra xem ô nào chứa công thức mảng, rồi kích cho code hoạt động bằng sự kiện Right_Click hay gì gì đó.
Ví dụ:
PHP:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim Cll As Range
Cancel = True
Target.Interior.ColorIndex = xlNone
For Each Cll In Target
    If Cll <> Empty And Cll.HasArray Then Cll.Interior.ColorIndex = 3
Next Cll
End Sub
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom