垂直方向・水平方向へ配列を追加するVSTACK関数・HSTACK関数の使い方:Excel関数


スポンサードリンク

更新 2022/9/9

VSTACK関数とHSTACK関数
VSTACK関数で串刺し計算(集計)にトライ

垂直方向へ配列を追加する
 ブイ スタック
=VSTACK(array1,array2,...)

水平方向へ配列を追加する
 エイチ スタック
=HSTACK(array1,array2,...)

VSTACK関数・HSTACK関数の引数

【使用例】

結合した配列からデータを検索する例

列数が異なる配列を結合すると?

VSTACK関数で串刺し計算(集計)にトライ

VSTACK関数で疑似 串刺し計算(集計)を行う

  1. 集計するシートのC2:E2セルに列見出しを入力します。
    B3セルに3つのテーブルの重複しない行見出しを書き出します。
    B3セルの数式は =UNIQUE(CHOOSECOLS(VSTACK(七月,八月,九月),1)) としています。
    3つのデータの結合は VSTACK(七月,八月,九月)
    この結合したデータから行見出しの列を CHOOSECOLS(VSTACK(七月,八月,九月),1) で取り出しています。
    ユニークな行見出しは UNIQUE関数で取り出しています。
    これらの関数の詳細な使い方は CHOOSECOLS関数 UNIQUE関数 をご覧ください。
  2. C3セルの数式は
    =SUM(FILTER(FILTER(VSTACK(七月,八月,九月),
    CHOOSECOLS(VSTACK(七月,八月,九月),1)=$B3),
    COUNTIF(C$2,$B$2:$E$2)))
    としました。


    数式の説明
    結合したデータ VSTACK(七月,八月,九月) から「りんご(B3セル)」のデータを取り出します。
    数式は FILTER(VSTACK(七月,八月,九月),CHOOSECOLS(VSTACK(七月,八月,九月),1)=$B3) としました。
    Filter関数で データ VSTACK(七月,八月,九月),から 1列目が「りんご($B3)」であるデータを取り出しています。

    取り出したデータでりんごの合計をするために、2列目の 128〜131の列を取り出します。
    FILTER(FILTER(VSTACK(七月,八月,九月),
    CHOOSECOLS(VSTACK(七月,八月,九月),1)=$B3),
    COUNTIF(C$2,$B$2:$E$2)
    )
    ,
    COUNTIF(C$2,$B$2:$E$2)
    は{0,1,0,0} といった配列を返しますので、2列目の 128〜131の列を取り出すことを指定しています。
    これで 128〜131が取り出せたので、データを合計すればよいので、SUM関数でくくればよいことになります。
  3. C3セルに入力した数式を右方向、下方向へコピーすれば完成です。
  4. 8月のデータに パイナップルを追加してみました。
  5. 数式を 7行目までコピーすると、計算結果が表示されます。
    データの追加にも対応しているのも確認できました。

スポンサードリンク



よねさんのWordとExcelの小部屋 »  エクセル関数一覧表 »  垂直方向・水平方向へ配列を追加するVSTACK関数・HSTACK関数の使い方

PageViewCounter
Counter
Since2006/2/27