doi_trai_co_don
Thành viên chính thức 


			
		- Tham gia
 - 27/1/07
 
- Bài viết
 - 52
 
- Được thích
 - 5
 


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 Function
	

Tạm dùng cái này xem:Cảm ơn ChanhTQ nhưng cái mình cần không phải vậy. Nhờ ban giúp thêm
Function SumIfColor(ByVal ColorRng As Range, ByVal CritColor As Range, SumRng As Range) As Double
  Dim i As Long, j As Long, dTotal As Double
  On Error Resume Next
  For i = 1 To ColorRng.Rows.Count
    For j = 1 To ColorRng.Columns.Count
      If ColorRng(i, j).Interior.ColorIndex = CritColor.Interior.ColorIndex Then
        dTotal = dTotal + SumRng(i, j).Value
      End If
    Next
  Next
  SumIfColor = dTotal
End Function
	=SumIfColor(B$2:B$12,$B$3,$F$2:$F$12)
	

Đây là một cách nè, đánh dấu trên cột phụCảm ơn ndu96081631 mình sẽ thử công thức của bạn. Cho mình hỏi thêm là theo bạn đánh dấu kiểu gì. Với File của mình không cần phải đánh dấu mầu (Đánh dấu kiểu gì cũng được). Chỉ có điều cấu trúc trong File phải như vậy. Mong bạn giúp đỡ thêm. Mình cảm ơn


Bạn có "mắc công" tô màu các ô E2, B3, C4... không? Thay vì ngồi tô màu các ô này thì Bạn gõ D, A, B... vào cột G, thế thôi.Ba tê ơi không ổn rồi. Nếu vị trí đánh dấu khác đi thì sai hết. Nhờ bạn giúp đỡ thêm. Cho mình hỏi về ý nghĩa cột phụ. TKS