이 수식 등을 숫자로만 <> 0을 제외한 여백, 에러 메시지를 카운트 할 수 있지만 그 디스플레이 ###### 세포를 배제하지 않을 것이다 (그러나 실제로 는들을 포함)이 있으면 그 이유는 너무 좁은 열 또는 부정적인 날짜 또는 시간 값입니다. 당신이 정말로 기본 내용이 숫자가 0이 아닌 경우 #######을 표시 세포를 계산하지 않도록하려면
=SUMPRODUCT(--ISNUMBER(A2:A200))-COUNTIF(A2:A200,0)
, 당신의 Text 속성에 따라 행동하는 UDF를 사용해야합니다 세포. 또한 해당 열을 좁히거나 넓히면 해당 수식을 업데이트하는 계산 이벤트가 트리거되지 않으므로 수식 결과가 올바른지 확인해야합니다.
그래서 Application.Volatile를 코드에 추가했지만 수식의 결과가 적어도 다음 계산 이벤트까지 확인되는 범위의 디스플레이와 일치하지 않는 상황이 발생할 수 있습니다 일어난다.
이 사용자 정의 함수 (UDF)를 입력하려면 alt-F11이 Visual Basic Editor를 엽니 다. 프로젝트가 프로젝트 탐색기 윈도우에서 강조 표시되어 있는지 확인하십시오. 그런 다음 상단 메뉴에서 삽입/모듈을 선택하고 아래에있는 코드를 붙여 넣습니다.
이 사용자 정의 함수 (UDF)의 일부 셀에
=CountNumbersNEZero(A2:A200)
같은 수식을 입력 사용하십시오.I가 표시 열이 그 표시가있는 경우 수치 값을 표시하거나, 너무 작은 것에 의한 것인지 #######을 제외 할 수있는 공식이 판단하지
Option Explicit
Function CountNumbersNEZero(rg As Range) As Long
Application.Volatile
Dim C As Range
Dim L As Double
For Each C In rg
If IsNumeric(C.Text) Then
If C.Text <> 0 Then L = L + 1
End If
Next C
CountNumbersNEZero = L
End Function
의 때문에 부정 날짜. 수식은 디스플레이가 아닌 셀의 기본 값을 조사합니다. –