• ベストアンサー

Excelの配列数式について

某テキストで配列数式を勉強していたのですが、次の文の意味がちょっと理解できません。どなたか教えてください。 「数式の中で配列を引数として使用する場合、配列の次元はすべて同じでなければなりません。配列引数の次元や配列範囲の次元が異なっていると、それらの引数は自動的に拡張されます。」

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

例として次のような配列数式があるとします。特に意味はありませんが、範囲の+数を10倍した和を求めるものです。 {=SUM(IF(A1:A10>0,A1:A10*10,0))} >配列の次元はすべて同じでなければなりません というのは、 A1:A10>0 のA1:A10 と A1:A10*10 のA1:A10 が同じ(同じ10コのセルの範囲) というように同じになっているということです。 この配列の部分は、 {=SUM(IF(A1:A10>0,A1:A10*10,0))} でいうと =SUM(IF(A1>0,A1*10,0),IF(A2>0,A2*10,0),…,IF(A10>0,A10*10,0)) のようにそれぞれが同じ部分になるように展開されます。 なので、同じ範囲でないといけないという意味です。 もし、範囲が異なっていると、 例えば、 A1:A3={1,2,3} だとしてそれに対応する他の配列の部分が A1:A2 だとすると A1:A3={1,2,N/A} のように(対応する個数が同じになるように)拡張されます

kuku_1224
質問者

お礼

とても丁寧にわかりやすい説明でよく理解できました。本当にありがとうございました。