문제

목록 시작 부분의 범위 이름을 알고 있습니다. 1 열 너비와 x 줄이 깊어요.

어떻게 계산하나요? x?

열에는 이 목록보다 더 많은 데이터가 있습니다.그러나 이 목록은 연속되어 있습니다. 셀 위나 아래 또는 옆에는 아무 것도 없습니다.

도움이 되었습니까?

해결책

Function ListRowCount(ByVal FirstCellName as String) as Long
    With thisworkbook.Names(FirstCellName).RefersToRange
        If isempty(.Offset(1,0).value) Then 
            ListRowCount = 1
        Else
            ListRowCount = .End(xlDown).row - .row + 1
        End If
    End With
End Function

하지만 목록에 아무것도 없다고 확신한다면 그냥 thisworkbook.Names(FirstCellName).RefersToRange.CurrentRegion.rows.count

다른 팁

Sheet1.Range("myrange").Rows.Count

Excel 수식을 사용하여 행을 결정하는 것은 어떨까요?예를 들어, A열에 데이터가 포함된 셀 수를 찾고 있는 경우 다음을 사용하세요.

=COUNTIFS(A:A,"<>")

<>를 임의의 값으로 대체하여 해당 값이 포함된 행 수를 확인할 수 있습니다.

=COUNTIFS(A:A,"2008")

이는 채워진 셀을 연속해서 찾는 데에도 사용할 수 있습니다.

다음을 사용할 수도 있습니다.

Range( RangeName ).end(xlDown).row

명명된 범위에서 시작하여 데이터가 포함된 마지막 행을 찾습니다.

@GSerg가 제공한 답변을 원하셨을 것이라고 확신합니다.라는 워크시트 함수도 있습니다. rows 그러면 행 수를 알 수 있습니다.

따라서 다음과 같은 명명된 데이터 범위가 있는 경우 Data 7개의 행이 있는 경우 =ROWS(Data) 해당 셀에 7이 표시됩니다.

마지막 한 줄은 @GSerg에서 완벽하게 작동했습니다.

다른 기능은 제가 작업해 왔던 기능이었지만 꼭 필요한 경우가 아니면 UDF에 의존하는 것을 좋아하지 않습니다.

나는 Excel과 VBA의 조합을 시도했고 이것이 작동하도록 했습니다. 그러나 귀하의 답변에 비해 투박합니다.

strArea = Sheets("Oper St Report CC").Range("cc_rev").CurrentRegion.Address
cc_rev_rows = "=ROWS(" & strArea & ")"
Range("cc_rev_count").Formula = cc_rev_rows
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top