投稿者 るきお  (社会人) 投稿日時 2009/2/17 07:27:35
>If StrDATA(3) = "" Then
>    Debug.Print(StrDATA(3))
>End If
>で判定しても、Debug.Print(StrDATA(3))のへ移りません。
それはどのようにして確認しましたか?
イミディエイトウィンドウと出力ウィンドウを確認しましたか?
また、出力されているとしても 空文字が出力されるので肉眼での確認はかなり困難かもしれません。
たとえば、Debug.Print(">" & StrDATA(3) & "<")にすれば、StrDATA(3)が空でも"><"と出力されるので確認しやすいです。

なお、値の確認だけが目的なら単純にDebug.Printの行にブレイクポイントを設置して、
一時停止中にStrDATAを右クリックしてクイックウォッチを選択するという方法もあります。

それから、プログラムの内容がどうも業務系に感じたので一言付け加えます。
SQL文に変数を & でくっつけていくのではなくパラメータを使うのが一般的です。
SqlCmd.Parameters.Addで追加できます。

そうしないとこのCSV経由でSQLインジェクションされる危険があります。
それに多くのデータベースエンジンはパラメータクエリの方が効率よく処理できます。