関数の複合参照

さて。関数の相対参照と絶対参照について理解できたところで、「複合参照」を見ていきましょう。

先に、複合参照とは何か、について言及しておきます。

先ほど学習した「絶対参照」は、「列位置」「行位置」の両方を固定する参照方法でした。これに対し、これから学習する「複合参照」は、「列位置のみ」もしくは「行位置のみ」を固定する参照方法です。

それでは、複合参照を理解するために、次のような表を考えてみましょう。丸数字とローマ数字を、各行、各列ごとにつなげています。



セルB2で、丸数字とローマ数字をつなげる数式は「=A2&B1」ですね。ここで入力した数式を利用して、全てのセルにオートフィルで入力することを考えます。

まず、ヨコ方向にオートフィルすることを考えると、丸数字の方を絶対参照で固定した「=$A$2&D2」という数式に修正する必要がありそうです。



また、タテ方向にオートフィルすることを考えると、ローマ数字の方を絶対参照で固定した「=A4&$B$1」という数式に修正する必要がありそうです。



すると、ヨコ・タテ両方のオートフィルに対応するには、数式を「=$A$2&$B$1」と修正することになります。しかし、この数式を全セルにオートフィルでコピーすると、次のように表示されてしまいます。



そこで、次のように考えます。
■ヨコ方向のオートフィルについては、丸数字が入力されている「A列目」の列位置のみを固定します。列位置のみを固定するには、列番号の前のみに「$」を付けます。



■タテ方向のオートフィルについては、ローマ数字が入力されている「1行目」の行位置のみを固定します。行位置のみを固定するには、行番号の前のみに「$」を付けます。



上記より、ヨコ・タテ両方のオートフィルに対応する数式は「=$A2&B$1」となります。この数式を全セルにオートフィルでコピーします。全セルにオートフィルするには、まず、ヨコ方向にオートフィルした後、選択されている行全体をタテ方向にオートフィルします。



セルD4を例にして、結果を確認してみましょう。
丸数字の方は、列位置がA列に固定され、行位置は固定されることなく、コピー元の関係が保たれているため、期待通りの結果が得られます。



一方、ローマ数字の方は、行位置が1行目に固定され、列位置は固定されることなく、コピー元の関係が保たれているため、こちらも期待通りの結果が得られます。



このように、行の位置関係のみ、もしくは列の位置関係のみを固定するセルの参照方法を「複合参照」といいます。