6

状況: Excel 10 を使用しています。数式を使用して値を計算する名前付き変数があります。これは名前付き変数であり、名前付き範囲ではありません (「名前マネージャー」では、「MaxDate」という名前は「=MAX(Sheet1!B:B)」を指し、列 B は日付のリストです)。計算された値は、それ自体ではセルに表示されませんが、スプレッドシート内のさまざまな数式で使用されます。

私の問題: この名前付き変数を VBA コードで参照するにはどうすればよいですか? range("MaxDate").value の使用は機能しません。単純に値をセルに入れてセルを参照できることはわかっていますが、変数を直接参照する方法を見つけたいと思います。アイデアはありますか?ありがとう。

4

2 に答える 2

15

名前付き変数を操作する例を次に示します。

Sub TestNamedVariable()

Dim varFormula As String
Dim varValue As Variant

'This will print the formula if you need it:
varFormula = ActiveWorkbook.Names("MaxDate")

'This will evaluate the named variable/formula
varValue = Application.Evaluate("MaxDate")

End Sub
于 2013-03-27T16:06:03.380 に答える
2

名前付き変数「MyVar」を持つ特定のワークブックの場合、値は「=MAX(Sheet1!B:B)」です。
次のコードを試してください。

Evaluate(ActiveWorkbook.Names("MyVar").RefersTo)

必要に応じて、ActiveWorkbook を参照しているオブジェクトに置き換えます。

于 2013-03-27T16:14:33.563 に答える