Mình muốn đếm các ô A4;C4 ;E4;G4 cho kết quả là 4. Không phải đếm chữ GPE.Nếu muốn đếm các ô có dữ liệu bất kì thì dùng hàm Counta, còn muốn đếm các ô có dữ liệu thỏa mãn điều kiện nào đó thì dùng countif.
Bạn dùng hàm counta nhé!Mình muốn đếm các ô A4;C4 ;E4;G4 cho kết quả là 4. Không phải đếm chữ GPE.
Có phải như vậy không bạn COUNTA(A4:H4), kết quả là 8 không giống ý mình, phải là 4. Muốn đếm nguyên vùng không đếm từng ô.Bạn dùng hàm counta nhé!
Từ A4:H4 ô nào cũng có dữ liệu mà bạn lại chỉ muốn đếm các ô riêng lẻ mà lại muốn đếm nguyên vùng trong khi các ô đó dữ liệu lai không giống nhau thì tôi chịu, nếu các ô đó có cùng 1 nội dung như nhau thì còn có thể.Có phải như vậy không bạn COUNTA(A4:H4), kết quả là 8 không giống ý mình, phải là 4. Muốn đếm nguyên vùng không đếm từng ô.
Của bạn đây vui lòng xem fileMình muốn đếm các ô A4;C4 ;E4;G4 cho kết quả là 4. Không phải đếm chữ GPE.
Các bạn đếm nhưng đừng nghỉ đến chữ GPE --> có thể là dữ liệu khác. Nói tóm lại đếm cách ô, không đếm liên tục. Cảm ơn các bạn.
Có phải bạn cần đếm ô nào chứa dữ liệu không tính những ô chứa công thức không? Nếu đúng vậy thì phải dùng VBA để đếm xem có bao nhiêu ô chứa công thức bằng thuộc tính Hasformula của đối tượng range.Các bạn đếm nhưng đừng nghỉ đến chữ GPE --> có thể là dữ liệu khác. Nói tóm lại đếm cách ô, không đếm liên tục. Cảm ơn các bạn.
Function so_ct(r As Range) As Long
Dim rr As Range
Dim i As Long
i = 0
For Each rr In r
If rr.HasFormula Then i = i + 1
Next
so_ct = i
End Function
Function dulieu(r As Range) As Long
Dim rr As Range
Dim i As Long
i = 0
For Each rr In r
If rr.HasFormula Then i = i + 1
Next
dulieu = WorksheetFunction.CountA(r) - i
End Function
Hàm tự tạo của anh ra kết quả 8 nhưng bạn ý mong muốn là 4 anh ah,Có phải bạn cần đếm ô nào chứa dữ liệu không tính những ô chứa công thức không? Nếu đúng vậy thì phải dùng VBA để đếm xem có bao nhiêu ô chứa công thức bằng thuộc tính Hasformula của đối tượng range.
Để đếm số ô chỉ chứa dữ liệu, bạn dùng công thức =counta(A4:H4) - so_ct(A4:H4)Mã:Function so_ct(r As Range) As Long Dim rr As Range Dim i As Long i = 0 For Each rr In r If rr.HasFormula Then i = i + 1 Next so_ct = i End Function
Hoặc bạn có thể đưa luôn worksheetfunction counta vào hàm tự lập:
Để đếm số ô dữ liệu trong A4:H4, bạn dùng công thức =dulieu(A4:h4)Mã:Function dulieu(r As Range) As Long Dim rr As Range Dim i As Long i = 0 For Each rr In r If rr.HasFormula Then i = i + 1 Next dulieu = WorksheetFunction.CountA(r) - i End Function
Sao bạn không thêm dữ liệu vào file đi, mỗi dòng chả ai hiểu được yêu cầu của bạn là gì
Ô có công thức là gì (là số hay dạng chuỗi)
GPE có thể dữ liệu khác (là số hay dạng chuỗi)
tốt nhất bạn nên thêm dữ liệu và có yêu cầu cụ thể hơn
=SUM(IF(MOD(COLUMN(A4:G4),2)=0,0,1))
Chưa đúng bạn ơi! Bạn xem file giúp mình lại nhé.Có phải bạn cần đếm ô nào chứa dữ liệu không tính những ô chứa công thức không? Nếu đúng vậy thì phải dùng VBA để đếm xem có bao nhiêu ô chứa công thức bằng thuộc tính Hasformula của đối tượng range.
Để đếm số ô chỉ chứa dữ liệu, bạn dùng công thức =counta(A4:H4) - so_ct(A4:H4)Mã:Function so_ct(r As Range) As Long Dim rr As Range Dim i As Long i = 0 For Each rr In r If rr.HasFormula Then i = i + 1 Next so_ct = i End Function
Hoặc bạn có thể đưa luôn worksheetfunction counta vào hàm tự lập:
Để đếm số ô dữ liệu trong A4:H4, bạn dùng công thức =dulieu(A4:h4)Mã:Function dulieu(r As Range) As Long Dim rr As Range Dim i As Long i = 0 For Each rr In r If rr.HasFormula Then i = i + 1 Next dulieu = WorksheetFunction.CountA(r) - i End Function
Chưa đúng bạn ơi! Bạn xem file giúp mình lại nhé.
=SUM(IF(ISTEXT(A4:H4),1,0))
Bạn làm đúng rồi đấy, thay vì ctrl+shift+enter mình có công thức nào mà kết thúc bằng phím enter không bạn. Cảm ơn các bạn đã nhiệt tình giúp đỡNếu chỉ như yêu cầu đề bài , bạn thử dùng vậy xemMã:=SUM(IF(MOD(COLUMN(A4:G4),2)=0,0,1))
Nhớ ctrl+shift+enter nhé
Các "ô này có công thức" đã nhập công thức vào đâu mà kết quả đúng được?Chưa đúng bạn ơi! Bạn xem file giúp mình lại nhé.
Là dạng chuỗi bạn ơi!Thế theo mình hiểu ô có công thức là dạng số rồi đúng không bạn
Ctrl+shift+enterMã:=SUM(IF(ISTEXT(A4:H4),1,0))