Cần giúp tính tổng các ô màu vàng lại với nhau trên cột D (Có lẫn cả màu đỏ, tím,...) (1 người xem)

Liên hệ QC

Quý vị thấy câu hỏi này thế nào?

  • Câu hỏi quá khó, không thể làm được.

    Votes: 0 0.0%
  • Làm được, nhưng mất thời gian.

    Votes: 0 0.0%
  • Dễ ợt, làm trong phút mốt.

    Votes: 0 0.0%
  • Câu hỏi đâu đâu, lãng xẹt.

    Votes: 0 0.0%

  • Total voters
    0
  • Poll closed .

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
Chào Quý vị và các bạn GPE!
Nhờ Quý vị và các bạn giúp đỡ cho tôi vấn đề này với, cụ thể như sau:
Dọc theo cột D có các ô màu vàng, đỏ, tím chứa giá trị số => Tôi muốn tính tổng giá trị các ô màu vàng lại với nhau => Giá trị tổng cộng các ô màu vàng thể hiện trên ô D21 (
Dạng công thức, không phải số chết).
Mong Quý vị và các bạn GPE chỉ giáo!
Trân trọng cảm ơn!
P/s: Có 01 File đính kèm. Tôi xài excel 2003.
 

File đính kèm

Bạn tham khảo & làm theo hàm này:
PHP:
Function ColorFunction(ColorCell As Range, rRange As Range, Optional TuyBien As String)
 Dim vResult, iCell As Range:                     Dim iIndex As Long, Dem As Long
'Written by Ozgrid Business Applications
'Sums or counts cells based on a specified fill color.
 
 If TuyBien = "" Then TuyBien = "T"
 iIndex = ColorCell.Interior.ColorIndex
 For Each iCell In rRange
    If iCell.Interior.ColorIndex = iIndex Then
        Dem = 1 + Dem
        vResult = WorksheetFunction.SUM(iCell, vResult)
    End If
 Next iCell
 Select Case UCase$(TuyBien)
 Case "D"
    vResult = Dem
 Case "V"
    vResult = vResult / Dem
 Case Else
     
 End Select
 ColorFunction = vResult 
End Functd9i5I 
Sub DoiMau()     
 Color_Change Selection
End Sub

http://www.giaiphapexcel.com/forum/showthread.php?344-56-S%E1%BA%AFc-c%E1%BA%A7u-v%C3%B2ng-trong-excel
 
Bạn tham khảo & làm theo hàm này:
PHP:
Function ColorFunction(ColorCell As Range, rRange As Range, Optional TuyBien As String)
 Dim vResult, iCell As Range:                     Dim iIndex As Long, Dem As Long
'Written by Ozgrid Business Applications
'Sums or counts cells based on a specified fill color.
 
 If TuyBien = "" Then TuyBien = "T"
 iIndex = ColorCell.Interior.ColorIndex
 For Each iCell In rRange
    If iCell.Interior.ColorIndex = iIndex Then
        Dem = 1 + Dem
        vResult = WorksheetFunction.SUM(iCell, vResult)
    End If
 Next iCell
 Select Case UCase$(TuyBien)
 Case "D"
    vResult = Dem
 Case "V"
    vResult = vResult / Dem
 Case Else
     
 End Select
 ColorFunction = vResult 
End Functd9i5I 
Sub DoiMau()     
 Color_Change Selection
End Sub

http://www.giaiphapexcel.com/forum/showthread.php?344-56-S%E1%BA%AFc-c%E1%BA%A7u-v%C3%B2ng-trong-excel
Cảm ơn Quý vị đã chỉ giáo, rất hay. Tuy nhiên, tôi xin góp ý một tý nhé:
Khi thay đổi màu trong ô D10 từ màu vàng thành ô màu tím => ô D21 chứa giá trị tổng cộng các ô màu vàng không tự "Update" => Phải kích kép chuột trái vào ô D21 (Hoặc ấn F2 tại ô D21) thì mới tự "Update" => Có cách nào khắc phục được không nhỉ?
 
Chào Quý vị và các bạn GPE!
Nhờ Quý vị và các bạn giúp đỡ cho tôi vấn đề này với, cụ thể như sau:
Dọc theo cột D có các ô màu vàng, đỏ, tím chứa giá trị số => Tôi muốn tính tổng giá trị các ô màu vàng lại với nhau => Giá trị tổng cộng các ô màu vàng thể hiện trên ô D21 (
Dạng công thức, không phải số chết).
Mong Quý vị và các bạn GPE chỉ giáo!
Trân trọng cảm ơn!
P/s: Có 01 File đính kèm. Tôi xài excel 2003.

Viết chơi cái:
Mã:
Function SumColor(ByVal Range As Range, Optional ByVal Sample)
  Dim lColorIndex As Long, cel As Range, dRes As Double
  On Error Resume Next
  Application.Volatile
  If TypeName(Sample) = "Range" Then
    lColorIndex = Sample.Interior.ColorIndex
  ElseIf IsNumeric(Sample) Then
    If CLng(Sample) > 0 And CLng(Sample) < 57 Then
      lColorIndex = CLng(Sample)
    End If
  ElseIf IsMissing(Sample) Then
    lColorIndex = xlNone
  End If
  For Each cel In Range
    If cel.Interior.ColorIndex = lColorIndex Then
      If IsNumeric(cel.Value) Then dRes = dRes + cel.Value
    End If
  Next
  SumColor = dRes
End Function
Cách dùng:
=SumColor(Vùng dữ liệu, Mẫu màu)
Riêng với đối số Mẫu màu, bạn có thể cho nó là 1 cell nào đó hoặc số nào đó (nếu bạn biết được chỉ số màu mà bạn cần)
Ví dụ:
=SumColor(D6:D20, D19) ---> SUM vùng D6:D20 theo màu giống với màu cell D19
=SumColor(D6:D20, 6) ---> SUM vùng D6:D20 chỉ cộng những cell có chỉ số màu = 6 (số 6 tương đương màu vàng)
=SumColor(D6:D20) ----> Bỏ qua đối số Mẫu màu nghĩa là cộng những cell không màu
----------------------------
Khi có sự thay đổi về màu sắc, bạn bấm F9, kết quả sẽ tự cập nhật
 
Web KT

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

Back
Top Bottom