Private Sub Loadcmd_Click()
    With CommonDialog1
        .InitDir = App.Path
        .Filter = "Îı¾Îļþ|*.txt"
        .ShowOpen
    End With
    
    Open CommonDialog1.FileName For Input As #1
    Dim PointNo() As Long
    Dim i As Integer
    i = 0
    Do While Not EOF(1)
        Input #1, PointNo(i)
        Text1.Text = Text1.Text + CStr(PointNo(i)) + vbCrLf
        i = i = 1
    Loop
    Close #1
End Sub

解决方案 »

  1.   

    你的代码是错误的
    你的PointNo() 是一个空数组,一个元素都没有,当然报下标越界错误了
      

  2.   

    把input 改为line input是不是PointNo()里就有东西啦
      

  3.   

    对于将文件读入数组,在读入之前,数组必须定义好好大小
    redim PointNo(nSize)
      

  4.   

    若我redim PointNo(9999) AS Long,却只赋值给该数组100个数字,那输出PointNo时,会输出多少个数字?
      

  5.   

    一楼的问题:没有redim PointNo(新定义的大小)
    五楼的问题:你程序是要读取文件中的内容,如果文件内容不多,那么读到文件末尾EOF(1)循环就结束了。比如有100个数,就输出到text1里面100个数。