Excel データをVBA内でADO 接続で、SQLを使用する場合、ヘッダーをNOにする方が良い

VBA内で、ヘッダーをYes とした場合、データ型が勝手に決められる。
そのため、型があわないと、データがはじかれている場合がある。
特に、日付や時間は、シリアル数値となるので
SQL実行時に、データを取り込んでいないことがある。

No とした場合、とりあえず、全てが文字型として取り上げられるようなので
すべてのデータは読み込まれ、
日付はシリアル数値の文字列となる。

データ領域が B2:cc5000 の場合、
例えば5番目の項目が、日付で比較の対象なら 
項目は左からF1,F2,F3…となるので

   select * from [シート名$B2:CC5000] where format(F5,”YYYY/MM/DD”) >= #2017/08/11#

などの文を組み立てれば良い。

コメントを残す

メールアドレスが公開されることはありません。