> Dim i As Integerの行を削除しました。 > For i =0 > の記述はありますが、 > これでもうまくいくのですね。
VB.NET 2002 までは Dim i As Integer For i = 0 To 10 のように、事前に変数宣言が必須でした。
VB.NET 2003 からは For i As Integer = 0 To 10 のように書くことで、For ブロックのみで有効な「局所変数」を作れるように進化しました。 https://atmarkit.itmedia.co.jp/fdotnet/special/vs2003/vs2003_04.html
その後、VB2008 の時代になって「型推論」という機構が生まれ、 Dim i As Integer = 123 Dim s As String = "abc" といった、変数宣言時に初期値を指定しているコードでは、As 句を省略して Dim i = 123 Dim s = "abc" と書いても良いことになりました。この機能があるおかげで、今では For i = 0 To 10 と書いただけで、(事前に Dim i As Integer 無しで)局所変数 i として認識されるようになっています。
そもそも Imports ステートメントというのは、 'Dim adp As New Global.System.Data.OleDb.OleDbDataAdapter() Dim adp As New System.Data.OleDb.OleDbDataAdapter() 'Global.System.Windows.Forms.MessageBox.Show("TEST") System.Windows.Forms.MessageBox.Show("TEST") といった、名前空間付きの長い型指定を簡略化して、 Dim cn As New OleDbConnection() MessageBox.Show("TEST") のように、名前空間を省略してクラス名だけで短く表記するための仕組みに過ぎません。参照設定とは別物です。