Application.Evaluate メソッド (Excel)Application.Evaluate method (Excel)

Microsoft Excel で使用する名前をオブジェクトまたは値に変換します。Converts a Microsoft Excel name to an object or a value.


評価(名前)expression.Evaluate (Name)

expression**Application** オブジェクトを 表す変数。expression A variable that represents an Application object.


名前Name 必須 / オプションRequired/Optional データ型Data type 説明Description
名前Name 必須Required VariantVariant Microsoft Excel の名前付け規則を使用した、対象オブジェクトの数式または名前。A formula or the name of the object, using the naming convention of Microsoft Excel. 名前の長さは 255 文字以下にする必要があります。The length of the name must be less than or equal to 255 characters.

戻り値Return value



このメソッドでは、次のような種類の名前を使用できます。The following types of names in Microsoft Excel can be used with this method:

  • 数式を示します。Formulas.

  • A1 形式の参照A1-style references. 単一セルに対する A1 形式の参照であれば、特に制限はありません。You can use any reference to a single cell in A1-style notation. ただし、このメソッドでは、参照は常に絶対参照として扱われます。All references are considered to be absolute references.

  • 範囲Ranges. 参照と共に使うことのできる演算子には、セル範囲を表す参照演算子 (:)、セル参照の共通部分を表す参照演算子 (スペース)、およびセル参照の複数選択を表す参照演算子 (,) があります。You can use the range, intersect, and union operators (colon, space, and comma, respectively) with references.

  • 定義された名前Defined names. コード記述時の言語で定義された名前を指定します。You can specify any name in the language of the macro.

  • 外部参照External references. !演算子を使用して、セルまたは他のブックで定義されている名前を参照することができます。たとえば、 Evaluate("[BOOK1.XLS]Sheet1!A1")のようになります。You can use the ! operator to refer to a cell or to a name defined in another workbook; for example, Evaluate("[BOOK1.XLS]Sheet1!A1").

  • Chart オブジェクトChart objects. 凡例、プロットエリア、データ系列1など、任意のグラフオブジェクト名を指定して、そのオブジェクトのプロパティとメソッドにアクセスできます。You can specify any chart object name, such as Legend, Plot Area, or Series 1, to access the properties and methods of that object. たとえば、 Charts("Chart1").Evaluate("Legend").Font.Nameは凡例で使用されているフォントの名前を返します。For example, Charts("Chart1").Evaluate("Legend").Font.Name returns the name of the font used in the legend.

  • フォームコントロール番号Form Control number. ワークシートのフォームコントロールを参照するには、番号と名前を指定できます。You can specify a number, as well as a name, to refer to Form Control on a worksheet. たとえば、ワークシートに配置されているラベル ([開発] タブ-[フォームの挿入] Evaluate("Label 1").Caption = "Hello"コントロールEvaluate("1").Caption = "Hello" -ラベル) は、両方とも同じです。For example, for Label located on a worksheet (Developer tab - Insert - Form Controls - Label), both Evaluate("Label 1").Caption = "Hello" and Evaluate("1").Caption = "Hello" do the same.

Evaluate メソッドの代わりに角かっこを使っても、同じ結果が得られます ([A1:C5] など)。Using square brackets (for example, "[A1:C5]") is identical to calling the Evaluate method with a string argument. たとえば、次の 3 組のコードでは、組ごとにそれぞれ同じ動作を表します。For example, the following expression pairs are equivalent.

[a1].Value = 25 
Evaluate("A1").Value = 25 
trigVariable = [SIN(45)] 
trigVariable = Evaluate("SIN(45)") 
Set firstCellInSheet = Workbooks("BOOK1.XLS").Sheets(4).[A1] 
Set firstCellInSheet = _ 

角かっこを使用すると、コードの記述を短くすることができます。The advantage of using square brackets is that the code is shorter. Evaluateを使用する利点は、引数が文字列であることです。そのため、コード内で文字列を構築するか、Visual Basic の変数を使用することができます。The advantage of using Evaluate is that the argument is a string, so you can either construct the string in your code or use a Visual Basic variable.


次の使用例は、シート 1 のセル A1 のフォントに、太字を設定します。This example turns on bold formatting in cell A1 on Sheet1.

boldCell = "A1" 
Application.Evaluate(boldCell).Font.Bold = True

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.