リストの開始の範囲名を知っている-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
というワークシート関数もあります。
したがって、7行のData
という名前のデータ範囲がある場合、=ROWS(Data)
はそのセルに7を表示します。
最後の1行は@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