1

サブルーチンまたは関数で処理したいデータを含む Excel の名前付き範囲がありますが、範囲の個々の部分を参照する方法を理解するのに苦労しています。関数を使用しようとしていますが、Cells機能していないようです。

ここに私のコードのスニペットがあります:

Sub sub1()
x = Range("Test")

For Each i In x
    v = x.Cells(i, 1)
    calculate(v)
Next i

End Sub

現時点では、名前付き範囲「Test」は A1:A18 に対して名前が付けられており、計算関数は記述されていません。VBA でデバッグ ツールを使用すると、プログラムは次のv = x.Cells(i,1)行でエラーをスローします: "実行時エラー '424': オブジェクトが必要です"

私が見逃している明らかな何かがあるようです。おそらく、名前付き範囲を配列に変換する方法はありますか?

4

2 に答える 2

1

使用する必要はありませんCells:)

これはあなたがしていることですか(未テスト)?

Sub sub1()
    Dim cl As Range, nmRange As Range

    Set nmRange = Range("Test")

    For Each cl In nmRange
        calculate (cl)
    Next cl
End Sub

'~~> Some sub
Sub calculate(rng As Range)

End Sub
于 2013-09-16T06:23:29.780 に答える