SpreadJS製品ヘルプ
数式内のシート参照
関数リファレンス > 数式の概要 > 数式内のシート参照

数式には、同一シート内のセル、または別のシート内のセルに対する参照を含めることができます。セル範囲への参照を含めることもできます。

以下に示す例では、A1(アルファベット、行番号)形式のセル参照を使用していますが、これはR1C1(行番号、行番号)形式の場合でも同様です。 シートを参照するには、表記形式に関係なく、後述するようにセル参照の前にシート名を指定します。

セルへの参照に、別のシート内のセルへの参照が含まれる場合は、クロスシート参照と呼ばれます。

次に、加算演算子を使用した数式内でクロスシート参照を使用する例を示します。

(FirstRoundData!A2 + SecondRoundData!A2)

1番目のシート名は「FirstRoundData」、2番目のシート名は「SecondRoundData」となります。 シート名はセル参照の前に指定しますが、このとき、シート名の後に感嘆符(!)を入力します。 この数式は、オペランドとして各セルのシート名を明記しているので、Spread内のどのシート内でも使用できます。 この例は、2つの異なるシート上のA2セル値を加算しています。 それぞれのシート名を明記しているため、どちらがどのA2セルか、混乱が生じることはありません。 シート名を指定しない場合は、現在のシート(数式が入力されたシート)が使用されます。 上記の例で、数式がSecondRoundDataページに入力されているとすると、同じ数式を次のように記述することもできます。

(FirstRoundData!A2 + A2)

次に示すように、現在のページのセルを最初に配置したほうが、より読みやすくなります。

(A2 + FirstRoundData!A2)

通常の変数名のルールに従ったシート名であるかぎり(先頭が文字またはアンダースコアで、以降すべては文字、数字、アンダースコアのいずれか)、数式では感嘆符の直前のシート名が使用されます。 そうでないシート名は、単一引用符で囲む必要があります。 シート名に単一引用符自体が含まれる場合は、数式内では単一引用符を2つ続けて入力します。 たとえば、ある月の売上を示すシート名に単一引用符(アポストロフィ)が含まれる場合は、数式でのシート参照は次のように指定します。

('November''s Sales'!A2 + 'December''s Sales'!A2)

「s」の前に2つの単一引用符(アポストロフィ)が使用されていることに注目してください。 シート名にスペースが含まれるシートを参照する場合も、このシート名を単一引用符で囲みます。 次の例は、「East Coast Sales」、「West Coast Sales」という名前のシートを参照します。

('East Coast Sales'!A2 + 'West Coast Sales'!A1)

シート名に二重引用符が含まれる場合は、それぞれの言語に必要とされる区切り文字を追加します。 たとえばC#の場合、シート名が「"Zippy" Sales」であり、二重引用符がシート名の一部となっている場合は、このシートへの参照を含む数式は次のようになります。

('/"Zippy/" Sales'!A2 + 'West Coast Sales'!A1)

シート名全体を単一引用符で囲み、二重引用符の前にバックスラッシュ(/)を入力します。 Visual Basicの場合は、次に示すように、二重引用符を2つ続けて入力する必要があります。

('""Zippy"" Sales'!A2 + 'West Coast Sales'!A1)

クロスシート参照で、別のページのセル範囲を参照する場合は、シート名に続けてセル範囲を指定します。 次に、例を示します。

SUM(SecondRoundData!A2:A10)

この数式は、SecondRoundDataというシートのセル範囲A2~A10の合計値を算出します。 全セルは同一シート内にあるため、セル範囲の終了位置を示すセルにシート名を指定する必要はありません。 2つの異なるシートにまたがるセル範囲を指定することはできません。セル範囲は常に、複数シートではなく、単一シート内で指定する必要があります。