đếm có bao nhiêu ô chứa dữ liệu

Liên hệ QC

0167767

Thành viên hoạt động
Tham gia
10/3/12
Bài viết
141
Được thích
10
đếm có bao nhiêu ô chứa dữ liệu khi mà các ô không liên tục nhau. Yêu cầu có trong file. Xin cảm ơn.
 

File đính kèm

  • Book1.xls
    13.5 KB · Đọc: 20
Bạn muốn đếm các ô có dữ liệu hay muốn đếm các ô có cùng 1 nội dung(như trong file bạn tôi thấy bạn muốn đếm số lượng các ô có nội dung là 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.
 
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 ô.
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ể.
Bạn đợi các cao thủ khác vậy.
 
Ví dụ như thế này:..................
 

File đính kèm

  • Book1.xls
    26.5 KB · Đọc: 12
Của bạn đây vui lòng xem file
Người ta muốn đếm nguyên vùng cơ bạn ạ!
quote_icon.png
Nguyên văn bởi 0167767Có 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á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á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.

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
 
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.
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
Để đếm số ô chỉ chứa dữ liệu, bạn dùng công thức =counta(A4:H4) - so_ct(A4:H4)
Hoặc bạn có thể đưa luôn worksheetfunction counta vào hàm tự lập:
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
Để đếm số ô dữ liệu trong A4:H4, bạn dùng công thức =dulieu(A4:h4)
 
Lần chỉnh sửa cuối:
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ã:
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
Để đếm số ô chỉ chứa dữ liệu, bạn dùng công thức =counta(A4:H4) - so_ct(A4:H4)
Hoặc bạn có thể đưa luôn worksheetfunction counta vào hàm tự lập:
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
Để đếm số ô dữ liệu trong A4:H4, bạn dùng công thức =dulieu(A4:h4)
Hàm tự tạo của anh ra kết quả 8 nhưng bạn ý mong muốn là 4 anh ah,
tốt nhất đợi bạn ý viết cụ thể hơn, đỡ phải đoán nhiều anh ah
 
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
Mã:
=SUM(IF(MOD(COLUMN(A4:G4),2)=0,0,1))
Nếu chỉ như yêu cầu đề bài , bạn thử dùng vậy xem
Nhớ ctrl+shift+enter 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ã:
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
Để đếm số ô chỉ chứa dữ liệu, bạn dùng công thức =counta(A4:H4) - so_ct(A4:H4)
Hoặc bạn có thể đưa luôn worksheetfunction counta vào hàm tự lập:
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
Để đếm số ô dữ liệu trong A4:H4, bạn dùng công thức =dulieu(A4:h4)
Chưa đúng bạn ơi! Bạn xem file giúp mình lại nhé.
 

File đính kèm

  • file.xls
    23.5 KB · Đọc: 3
Mã:
=SUM(IF(MOD(COLUMN(A4:G4),2)=0,0,1))
Nếu chỉ như yêu cầu đề bài , bạn thử dùng vậy xem
Nhớ ctrl+shift+enter nhé
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 đỡ
 
Web KT
Back
Top Bottom