2016.06.16
上場企業の決算一覧を作成する その7

「その6」で「MATCH」関数を使って行番号を求めました。
ということで、行番号と列番号を指定してセルの内容を表示します。
--うにゃ? セルの内容を指定するだけなら「=」でセルを参照すればいいんだみょ
うん。例えば「C2」とかの指定ができればそれでいいのですが、このセルを計算結果から指定しようとすると、このような「A1形式」では指定できません。
そんな時には「INDEX」関数を利用します。
「INDEX」には「=INDEX(配列,行番号,列番号)」と「=INDEX(参照,行位置,列位置 ,領域番号)」の2種類の書式がありますが、今回は範囲がひとまとまりですので、どちらでも使えます。
ということで、「=INDEX(範囲,行番号,列番号)」を利用します。
INDEXの引数は、「範囲」が「上場企業の決算データ」シート全体で、「行番号」がMATCH関数で求めた値で、「列番号」が「上場企業の決算データ」シートの財務データが入っている列となります。
この列番号は「上場企業の決算データ」シートのC列(列番号3)から一つずつ増えていきます。「上場企業一覧」の列に対応させますので、手で入力してもいいのですが、おしゃれじゃないので、「上場企業一覧」の列番号を使って算出します。
excelには、セルの行番号と列番号を抽出する関数が用意されています。行番号を抽出するのが「ROW」関数で、列番号を抽出するのが「COLUMN」関数です。
ということで、ここでは「COLUMN」を利用します。
式を入力します。行番号の式を入力した右のセルを選択して、「数式バー」左の「fx」をクリックします。「関数の挿入」ウィンドウで関数の検索窓に「INDEX」(小文字でも可)を入力して「検索開始」ボタンをクリックして、表示された「INDEX」を選択して「OK」ボタンをクリックします。
「引数の選択」ウィンドウで「配列、行番号、列番号」を選択して「OK」ボタンをクリックします。

「関数の引数」ウィンドウで「配列」の入力窓を選択して、「上場企業の決算データ」シートタブを選択して、行見出し「1」の上列見出し「A」の左をクリックしてシート全体を選択して、「F4」キーを押して「絶対参照」にします。例では「zaimu!$1:$1048576」となります。

「行番号」の入力窓を選択して、行番号の式が入ったセルをクリックして「F4」キーを3回押すなどして列だけ絶対参照にします。例では「$K2」となります。
「列番号」の入力窓を選択して、「COLUMN()」と入力すると右の表示が「=12」となります。必要な結果は「3」ですので、「-9」を入力します。例では「COLUMN()-9」となります。
入力できたら「OK」ボタンをクリックします。

ということで、データセルの入力式は以下のようになりました。
=INDEX(zaimu!$1:$1048576,$K2,COLUMN()-9)
これでほぼ完成ですので、「その8」で表を整えます。
