Excel の SQL テーブルから最大 10 行を取得しています。複数の行がある場合もあれば、1 つの行しかない場合もあります。
結果は、配列数式を使用してセル範囲に表示されます。私の問題は、SQLクエリによって1行しか返されない場合、その行が範囲全体に垂直にコピーされることです。
これは、静的な名前付き範囲を使用した私の問題の簡略化された印刷画面です。
その繰り返しはしたくない。これが私が達成したいことです:
何か案が?
編集
これは、私のセルの配列を生成するコードです:
=SQL("SELECT IT_Project_Name, SUM(Oct), SUM(YTD)
FROM SD_Source.sdSourceCells
GROUP BY IT_Project_Name
ORDER BY SUM(Oct) DESC")
SQL は、ワークブック内の名前付き範囲に対して SQL クエリを実行できるカスタム UDF 関数です。
私の問題に対して私が見つけたハックは、関数全体を名前付き範囲に入れてから =INDEX() を使用することでした。欠点は、コードへのアクセスや編集が困難になることです。