幅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
だけでいいのでは?
も使用できます:
Range( RangeName ).end(xlDown).row
名前付きの範囲から始まるデータを含む最後の行を見つける。
最後の一行が完璧に効いていた@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