百思不得其解?(这个程序是获取某磁盘是否存在,存在则写入文件),该如何处理

百思不得其解??(这个程序是获取某磁盘是否存在,存在则写入文件)
我定义了m ,怎么还提示变量未定义啊。请高手帮忙,帮我修改下出了什么问题。
代码如下:
Private Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
Dim a As Long

Private Sub Timer1_Timer()
Dim m As String
Dim i As Long

m = CDEFGHIJKLMNOPQRSTUVWXYZ

For i = 1 To 23
  a = GetDriveType(Left(m, i) & ":")
  If a = 3 Then
  Open App.Path & "\Log.txt" For Append As #1
  Print #1, Left(m, i) & "盘存在"
  Close #1
  End If
  i = i + 1
Next

End Sub

------解决方案--------------------
m = "CDEFGHIJKLMNOPQRSTUVWXYZ"
------解决方案--------------------
i=i+1 这句多余
------解决方案--------------------
应该用(Mid(m, i, 1) & ":")