Bác nào có phương pháp đếm số ô được tô màu trong excel không??????

Thảo luận trong 'Ứng dụng Excel' bắt đầu bởi van_ngo2004, 16 Tháng mười một 2005.

31,513 lượt xem

  1. van_ngo2004

    van_ngo2004 Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    Hanoi
    Em co 12 cột trong Excel, trong số đó: 4 cột để ở màu vàng, 4 cột để ở màu xanh, 4 cột để ở màu tím, 4 cột định dạng ở màu nâu.
    Có bác nào biết cách dùng lệnh trong excel để đếm được số cột theo từng màu không, giúp em với!!!!!!!!!!!!!!!!!
     
    #1
  2. WhoamI

    WhoamI Thành viên thân thiết

    Bài viết:
    534
    Đã được thích:
    0
    Nơi ở:
    Cố lên, cứ đi rồi sẽ tới!
    Mình nhớ trước mình cũng từng hỏi một cấu tương tự thế nhưng vẫn chưa có câu trả lời thì phải.
    đây rồi:
    Đây nữa:
    Theo hình dung của mình thì các định dạng trên mỗi cell thuộc cơ sở dữ liệu sơ cấp của ô. Vì thế khi muốn làm việc với các định dạng của ô thì phải tác động lên cơ sở dữ liệu sơ cấp của ô cái này chắc VBA làm được (đoán mò). Cứ chờ chút sẽ có các pác cao thủ thực sự giải đáp cho chúng ta.
     
    #2
  3. adam_tran

    adam_tran Steel Partner

    Bài viết:
    1,372
    Đã được thích:
    32
    Nơi ở:
    Goooogle
    Bạn thử macro sau

    Sub CellColor()
    Dim uRange As Range, cCell As Range
    Dim Num As Long
    On Error Resume Next
    Set uRange = ActiveSheet.UsedRange
    If uRange Is Nothing Then
    MsgBox ("Khong co du lieu trong sheet " & ActiveSheet.Name)
    Exit Sub
    End If
    Num = 0
    For Each cCell In uRange
    If cCell.Interior.ColorIndex <> xlNone Then Num = Num + 1
    Next cCell
    If Num = 0 Then
    MsgBox ("Khong co o nao to mau trong sheet " & ActiveSheet.Name)
    Else
    MsgBox ("Co " & Num & " o duoc to mau trong sheet " & ActiveSheet.Name)
    End If
    End Sub
     
    #3
  4. Tuanktcdcn

    Tuanktcdcn Lão già ham vui

    Bài viết:
    548
    Đã được thích:
    48
    Nơi ở:
    Hà Nội
    Cách làm đơn giản thôi, nhưng phải là VBA.
    Viết một các function như là:
    ========================
    Function vbaRed() as Long
    vbaRed=vbRed
    End Function

    Function vbaBlue() as Long
    vbaBlue=vbBlue
    End Function
    .......
    Có thể viết 16 hàm màu tương ứng với 16 màu cơ bản

    Function Getcolor(Byval ColorCell as Range) As Long
    Getcolor=ColorCell.Color........
    End Function
    ========================
    Bây giờ trên các Sheet ta có thể dùng công thức như là:
    =IF(Getcolor(A1)=vbaBlue(),"Mau xanh",Getcolor(A1)=vbaRed(),"Mầu đỏ",...,""))
    Công thức mảng đếm số ô có màu xanh là:
    {=Count(IF(Getcolor($A$1:$A$100)=vbaBlue(),1,""))}
     
    #4
  5. HongViet

    HongViet Thành viên thân thiết

    Bài viết:
    286
    Đã được thích:
    10
    Nơi ở:
    Đà nẵng
    Bạn thử làm theo cách sau:

    Xem trong quyển E.E. NotBook của Bác Sa_DQ (phần G5 ấy) Ngoài đếm nó còn có thể tính tổng gia trị chứa trong ô màu đặt trưng!
    :banana: :atom: :dzo:
     
    Last edited: 23 Tháng mười một 2005
    #5
  6. HongViet

    HongViet Thành viên thân thiết

    Bài viết:
    286
    Đã được thích:
    10
    Nơi ở:
    Đà nẵng
    Bạn thử làm theo cách sau:

    http://webketoan.com/forum/showthread.php?t=9982
    Đoạn mã này theo tôi thấy có thể đếm lần lượt 56 màu ấy chứ lại! Ông B.G cho đếm như vậy thôi, chứ cho nữa đếm nữa phải không cac Bác?!
    :banana: :atom: :dzo:
     
    Last edited: 17 Tháng mười một 2005
    #6
  7. Tuanktcdcn

    Tuanktcdcn Lão già ham vui

    Bài viết:
    548
    Đã được thích:
    48
    Nơi ở:
    Hà Nội
    Đó là phương pháp dựa vào "Conditional Formatting", cái này chỉ làm được 3 điều kiện thôi. Nhiều khi ta không dùng "Conditional Formatting" thì thế nào? VBA và viết hàm thôi.
     
    #7
  8. Tran Chau

    Tran Chau Thành viên hoạt động

    Bài viết:
    149
    Đã được thích:
    0
    Nơi ở:
    TP Ho Chi Minh
    Thực tập để viết VBA thì ok, còn dân pro thì search+*** đi, có hàng tá Excel soft về vụ color nầy,I nhớ còn có 1 web site chuyên bàn về VBA color Excel ,để thời gian suy nghĩ về cái người ta chưa làm :0frown:
     
    #8
  9. Yeudoi

    Yeudoi Thành viên thân thiết

    Bài viết:
    88
    Đã được thích:
    0
    Nơi ở:
    Hoi An Quang Nam
    Tôi nhớ trong thư viện đã có rồi viết bằng VBA. nếu ai không tìm hấy tôi sẽ gửi cho
     
    #9
  10. Tuanktcdcn

    Tuanktcdcn Lão già ham vui

    Bài viết:
    548
    Đã được thích:
    48
    Nơi ở:
    Hà Nội
    Sau một thời gian nghiên cứu tôi đã viết ra bộ hàm thống kê, đếm, tính tổng theo màu sắc với nhiều điều kiện. Hàm SumIffColor, CountIfColor, SumproductIfColor, SubtotalIfColor,...
    Bộ hàm trong Add-in A-Tools
    Các bạn xem video hướng dẫn tại đây:
     
    #10
    thinhvd thích bài này.

Chia sẻ trang này