本帖最后由 wszj800 于 2010-12-27 10:23:15 编辑

解决方案 »

  1.   

    定义在过程或函数中的变量是局部变量,其他过程中用不到的,你要在Command2_Click中那么就要放到外面来,表示局部变量,记住声明一定要在一个模块中所有过程或函数的最前面。
    Dim StrFileName As String '打开文件路径变量
    Dim Nn%, Un%, Tn%, Hn% '已知点个数,未知点个数,总点数,观测值个数
    Dim Pname() As String '点名数组
    Dim Hknown() As Double '已知高程数组,存放已知点高程和高程近似值
    Dim Be%(), En%() '观测值的起点和终点编号数组,存储的是点序号
    Dim H#(), S#() '高差观测值数组和距离观测值数组
    Dim A#(), X#(), P#(), l#(), Q#() '间接平差的误差方程系数阵、解向量、权阵、常数向量和协因数阵
    Dim MiddleError#, PointErr#() '点位中误差、点位误差数组
    Dim i%, j%, m% '作为循环变量用
    Dim n#(), U#() '法方程系数阵、常数项Private Sub Command2_Click()
    Dim sr(20) As String, t As Integer '每行字符组保存
    Text1 = ""
    i = 1
    Open "e:\vb\1.txt" For Input As #1
    Do While Not EOF(1)
    Line Input #1, ch
    Text1.Text = Text1.Text + ch + vbCrLf 'text换行先要把multiline设为t
    sr(i) = ch
    i = i + 1
    Loop
    i = i - 1
    Nn = Val(Mid$(sr(1), 1, 1)) '提取第一行数据
    Un = Val(Mid$(sr(1), 3, 1))
    Hn = Val(Mid$(sr(1), 5, 1))
    t = Len(sr(2))
    m = 1
    For j = 1 To t Step 2
      Pname(m) = Mid$(sr(2), j, 1)
      Print Pname(m)
      m = m + 1
    Next
    Close #1
    End Sub
      

  2.   

    把Dim StrFileName As String '打开文件路径变量
    Dim Nn%, Un%, Tn%, Hn% '已知点个数,未知点个数,总点数,观测值个数
    Dim Pname() As String '点名数组
    Dim Hknown() As Double '已知高程数组,存放已知点高程和高程近似值
    Dim Be%(), En%() '观测值的起点和终点编号数组,存储的是点序号
    Dim H#(), S#() '高差观测值数组和距离观测值数组
    Dim A#(), X#(), P#(), l#(), Q#() '间接平差的误差方程系数阵、解向量、权阵、常数向量和协因数阵
    Dim MiddleError#, PointErr#() '点位中误差、点位误差数组
    Dim i%, j%, m% '作为循环变量用
    Dim n#(), U#() '法方程系数阵、常数项
    放到所有代码的上面,就是“通用”里面
      

  3.   

    Private Sub Form_Load()
    Dim StrFileName As String '打开文件路径变量
    Dim Nn%, Un%, Tn%, Hn% '已知点个数,未知点个数,总点数,观测值个数
    Dim Pname() As String '点名数组
    Dim Hknown() As Double '已知高程数组,存放已知点高程和高程近似值
    Dim Be%(), En%() '观测值的起点和终点编号数组,存储的是点序号
    Dim H#(), S#() '高差观测值数组和距离观测值数组
    Dim A#(), X#(), P#(), l#(), Q#() '间接平差的误差方程系数阵、解向量、权阵、常数向量和协因数阵
    Dim MiddleError#, PointErr#() '点位中误差、点位误差数组
    Dim i%, j%, m% '作为循环变量用
    Dim n#(), U#() '法方程系数阵、常数项
    End Sub
    把里面的东东都放到
    “Dim sr(20) As String, t As Integer '每行字符组保存”下面即可。