HSTACK関数 - 配列を水平方向に結合

Excel 365, Excel 2021+

概要

HSTACK関数は複数の配列を水平方向(列方向)に順次結合し、1つの大きな配列を返します。動的配列機能を活用して、データセットを横に拡張するのに最適です。

構文

=HSTACK(array1,[array2],...)

パラメータ

パラメータ タイプ 必須 説明
array1 Array はい 最初に結合する必須の配列。セル範囲、数式、定数配列が使用可能。
array2,... Array いいえ 任意の追加配列。複数指定可能で、右側に順次結合される。

HSTACK関数の使用

HSTACKはデータ分析やレポート作成で、異なるデータソースの列を横に結合する際に非常に便利です。VSTACKと組み合わせることで、2次元的な配列操作が可能になります。エラー処理を組み合わせることで、実務レベルのデータ処理が実現できます。

HSTACKの一般的な例

基本的な2配列結合

=HSTACK(A2:C3,E2:G3)

2つの2行3列の配列を横に結合し、2行6列の結果配列を返します。完全一致する行数でエラーなし。

行長不一致時の#N/A補完

=HSTACK(A2:B4,C2:D3,E2:F2)

行数が異なる3配列を結合。短い配列の不足部分に#N/Aが自動挿入され、3行6列の結果に。

エラー値を含む結合(IFERROR併用)

=IFERROR(HSTACK(A2:B4,C2:D3,E2:F3),"データ不足")

空白セルやエラー値を含む場合の安全な結合。IFERRORでエラー処理を追加。

よくある質問

HSTACKは水平(横)方向に結合、VSTACKは垂直(縦)方向に結合します。同じ動的配列ファミリー関数です。

長い配列の行数に合わせ、短い配列には#N/Aが自動挿入されます。IFERRORで任意の値に置換可能です。

Excel 365、Excel 2021以降で利用可能です。旧バージョンでは代替手段が必要です。

一般的なエラーと解決策

#N/A エラー(不足行)

Cause: 結合する配列の行数が不一致

Solution: IFERROR関数で#N/Aを任意の値(""や0)に置換する。例:=IFERROR(HSTACK(...),"")

#VALUE! エラー

Cause: 配列内の不正なデータ型や参照エラー

Solution: 参照範囲を確認し、データ型を統一する。

配列が展開されない

Cause: 古いExcelバージョンまたは互換モード

Solution: Excel 365/2021を使用し、結果セルに余白を確保する。

注記

  • 結果配列の行数は各配列の最大行数、列数は全配列の列数合計になります。
  • 単一セルやスカラー値も配列として自動拡張されます。
  • 他の動的配列関数(VSTACK、CHOOSECOLS等)と組み合わせると強力です。
  • 大規模データでは計算負荷に注意が必要です。

互換性

利用可能: Excel 365, Excel 2021

利用不可: Excel 2019, Excel 2016, Excel 2013, Excel 2010, Excel 2007

コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 365, Excel 2021+