ExcelでSQLを使う際に元データで気をつけておく点があります。
タイトル行での空白・数値の制限
Excel x SQLではタイトル行での空白・数値を扱う際に制限があります。
これらを使用するとエラーが出たり、SQLでの集計が正しく行われなくなります。
- タイトル行に空白を含まない
- 数字だけもしくはタイトルの先頭に数字を使わない
空白の制限
タイトル行に空白が含まれている場合。
エラーになり集計することが出来ません。
数字だけ・先頭に数字の制限
タイトル行が数字だけの場合、実際に存在する列名だとしても、定数を指定したと判定されて、正しいデータ抽出が行われません。
また列名の先頭に数字があるとエラーになり集計ができません。
回避方法
一番は列名を上記ルールに該当しないものに変更すれば良いのですが、そうも行かない場合もあります。
上記ルールに該当する列名を正しく集計する方法は、SQLで列名を指定する際に [ ] で括ることです。
他にはSelect * from [テスト$]のように列を指定せず、全列抽出するようにすればエラーにならず集計することが出来ます。