配列数式を取得または設定する(FormulaArray プロパティ)
2015/06/19
FormulaArray プロパティ
FormulaArray プロパティは、対象のセル・セル範囲の配列数式(1つの数式または配列)を取得または設定します。指定したセル範囲に配列数式が含まれていないときは、Null 値を返します。
設定する値は、バリアント型(内部処理形式:String [文字列型] )を指定し、かならず、“” で囲みます。
<取得>
result = Object.FormulaArray
<設定>
Object.FormulaArray = formula
引数・戻り値
- object ・・・ 対象となる Range オブジェクト
- formula ・・・ 数式を表す文字列を指定
- result ・・・ 取得した数式を表す文字列
FormulaArray プロパティの文字数は 255 に制限されています。
セルに通常の数式が入力されている場合は、その数式を取得します。通常の数式が入力されているのか、配列数式が入力されているのかは、HasArray プロパティで調べることができます。
ヘルプには、「配列数式として入力するときは、数式には R1C1 形式を使う必要があります。A1 形式は使えません。」と記されていますが、とりあえず、Excel 2013 では、どちらも使用できるようです(FormulaArray プロパティの使用例)。
FormulaArray プロパティの使用例
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
Sub Sample_FormulaArray() '配列数式を入力 'Num が偶数である値の合計値を求める(AI形式で入力) Range("C9").FormulaArray = "=SUM(IF(MOD(B3:B8,2)=0,C3:C8,""""))" 'Num が奇数である値の合計値を求める(R1C1形式で入力) Range("C10").FormulaArray = "=SUM(IF(MOD(R3C2:R8C2,2)=1,R3C3:R8C3,""""))" '配列数式を入力 Range("F2:H8").FormulaArray = "=SUM(R3C3:R8C3)" '配列数式かどうかを確認し、配列数式である場合はその数式を表示 If Range("F2").HasArray = True Then MsgBox Range("F2").FormulaArray End If End Sub |
実行結果
実行前
実行後
関連記事
-
-
オートフィルタ(日付による抽出)AutoFilter メソッド
日付で、抽出する(AutoFilter メソッド) 【書式】 object.Au …
-
-
セルをアクティブにする・セルを選択する(Activate, Select)
セルをアクティブにする・選択する 【書式:セルをアクティブにする】 object …
-
-
対象のセルを直接参照しているセル全てを取得(DirectDependents プロパティ)
DirectDependents プロパティ DirectDependents …
-
-
網かけ(パターン)の取得・設定(Pattern プロパティ)
網かけ(パターン)を取得・設定する セルの背景に網かけ(パターン)を設定したり、 …
-
-
文字列の縦位置を取得・設定する(VerticalAlignment プロパティ)
VerticalAlignment プロパティ VerticalAlignmen …
-
-
アクティブなセルを参照する(ActiveCell プロパティ)
ActiveCell プロパティ ActiveCell プロパティは、各ウィンド …
-
-
指定した行数・列数移動したセル・セル範囲を参照(Offset プロパティ)
Offset プロパティ Offset プロパティは、基準となるセル・セル範囲か …
-
-
グラデーション(Pattern プロパティ・Gradient プロパティ)
セルの背景ににグラデーションを設定する Pattern プロパティを使用するとセ …
-
-
2つ以上のセル範囲を1つにまとめて参照(Union メソッド)
Union メソッド Union メソッドは、2つ以上のセル範囲を1つにまとめて …
-
-
入力規則(Validation オブジェクト)
Validation オブジェクト セル範囲に入力できる値を制限するには 入力規 …

