Chọn khoảng theo điều kiện để Countblank

tieubao11a1

Sơ cấp
Chào anh chị,

Em có 1 bài toán như sau ạ:
Ô A1: Có giá trị A, ô A10 có giá trị B, ở giữa là các khoảng trống. ==> Em có thể đếm từ Ô A1 đến A10 có bao nhiêu ô trống.

Tuy nhiên, khi em thay đổi vị trí của giá trị B- thay vì A10 mà em chuyển sang A15, thì có công thức nào sẽ tự động chọn lại khoảng A1:A15 cho em không ạ. (Điều kiện chọn khoảng là điểm đầu & điểm cuối có giá trị khác 0)
Em cảm ơn.
 
Chào anh chị,

Em có 1 bài toán như sau ạ:
Ô A1: Có giá trị A, ô A10 có giá trị B, ở giữa là các khoảng trống. ==> Em có thể đếm từ Ô A1 đến A10 có bao nhiêu ô trống.

Tuy nhiên, khi em thay đổi vị trí của giá trị B- thay vì A10 mà em chuyển sang A15, thì có công thức nào sẽ tự động chọn lại khoảng A1:A15 cho em không ạ. (Điều kiện chọn khoảng là điểm đầu & điểm cuối có giá trị khác 0)
Em cảm ơn.
Bạn đặt công thức này ở ô B15:
=ROW()-COUNTA(A1:A15)
 
Hi anh,
Ý em là: Có cách nào để khi mà vị trí của giá trị B mà thay đổi thì kết quả count từ công thức cũng thay đổi theo 1 cách tự động?
Công thức em đang dùng: =COUNTBLANK(A1:A15) với A1 cố định & A15 là vị trí của giá trị B. (có thể là A3, A4, A5, An...)
 
Hi anh,
Ý em là: Có cách nào để khi mà vị trí của giá trị B mà thay đổi thì kết quả count từ công thức cũng thay đổi theo 1 cách tự động?
Công thức em đang dùng: =COUNTBLANK(A1:A15) với A1 cố định & A15 là vị trí của giá trị B. (có thể là A3, A4, A5, An...)
Nếu dùng hàm đơn thuần thì phần này phải bằng mắt thôi. Có thể dùng hàm như sau:
Ô B1 dùng để gõ số dòng cuối cùng (ví dụ 15). Ô C1 điền công thức: CountBlank(Indirect("A1:A"&B1)). Như vậy kết quả là dòng cuối cùng của bạn nhìn bằng mắt thường là dòng bao nhiêu thì gõ số dòng đó vào ô B1 là Ok
Còn cách hay hơn là dùng VBA trong Excel. Cách này thì khỏi cần gõ dòng cuối cùng.
PHP:
Sub CountLastBlank()
    Dim d&, i&
    Dim NumCelBlank As Long
    d = ActiveSheet.Range("A" & ActiveSheet.Rows.Count).End(xlUp).Row
    On Error Resume Next
    For i = 1 To d
        If ActiveSheet.Cells(i, 1).Value = "" Then
            NumCelBlank = NumCelBlank + 1
        End If
    Next i
    MsgBox "So o trong la: " & NumCelBlank
End Sub
 
Back
Top