我想用VB写个通讯簿,保存用的是txt,里面的内容是这样的:
小明;19岁;山东人;QQ123456
小王;20岁;上海人;QQ123456
小张;18岁;浙江人;QQ123456
小扬;21岁;江苏人;QQ123456
...我该如何程序执行时导入这些数据,并且用;分割,在COMBOBOX列表上面显示第一个数组也就是“小明”“小王”...这个名字,其他的资料也是对应的,选择后会在几个text上面显示其他资料...
能给段代码吗.感激不尽....

解决方案 »

  1.   

    Private Sub command1_Click()
       Open curpath & curpath1 & "\aa.txt" For Output As #1
             Print #1, combo1.text & text1.text & text2.text &.......
             Close #1
     End sub
      

  2.   

    我想用VB写个通讯簿,保存用的是txt,里面的内容是这样的:
    小明;19岁;山东人;QQ123456
    小王;20岁;上海人;QQ123456
    小张;18岁;浙江人;QQ123456
    小扬;21岁;江苏人;QQ123456
    ...我该如何程序执行时导入这些数据,并且用;分割,在COMBOBOX列表上面显示第一个数组也就是“小明”“小王”...这个名字,其他的资料也是对应的,选择后会在几个text上面显示其他资料...
    能给段代码吗.感激不尽....
    用;分割啊 大哥
      

  3.   

    我该如何程序执行时导入这些数据,并且用;分割,在COMBOBOX列表上面显示第一个数组也就是“小明”“小王”...这个名字,其他的资料也是对应的,选择后会在几个text上面显示其他资料...
    能给段代码吗.感激不尽....
      

  4.   

    Option Explicit
    Type typaddinfo
        name As String
        age As String
        home As String
        qq As String
    End Type
    Private addinfo() As typaddinfo画面启动时读入信息
    Private Sub Form_Load()
        Dim i As Integer
        i = InStr(str, ",")
        str = Mid(str, i + 1)
        str = str & "," & CInt(Rnd * 10000)
        'Dim a As Variant
        a = Split(str, ",")
        
        
        Dim strLine As String
        Dim i As Integer
        i = 0
        ReDim addinfo(0)
        Combo1.Clear
        Open address.txt For Input As #1
        
        Do While Not EOF(1)
            Line Input #1, strLine
            ReDim Preserve addinfo(i)
            addinfo(i).name = Split(strLine, ";")(0)
            addinfo(i).age = Split(strLine, ";")(1)
            addinfo(i).home = Split(strLine, ";")(2)
            addinfo(i).qq = Split(strLine, ";")(3)
            Combo1.AddItem addinfo(i).name
            i = i + 1
        Loop
        
    End Sub
    COMBOBOX点击时相应更改text值,
    Private Sub Combo1_Click()
        Me.txtAge.Text = addinfo(Combo1.ListIndex).age
        Me.txtHome.Text = addinfo(Combo1.ListIndex).home
        Me.txtQQ.Text = addinfo(Combo1.ListIndex).qq
    End Sub
      

  5.   

    Type typaddinfo
        name As String
        age As String
        home As String
        qq As String
    End Type
    放到一个模块里
      

  6.   

    i = InStr(Str, ",") 
    提示参数不可选 [ Str ]
      

  7.   

    beal_p()  大哥 可以弄个完整的给我吗
      

  8.   

    addinfo(i).name = Split(strLine, ";")(0)
    提示 下标越界
      

  9.   

    beal_p() 大哥 我的QQ331224603 可以指教吗
      

  10.   

    Type typaddinfo
        name As String
        age As String
        home As String
        qq As String
    End Type
    Private addinfo() As typaddinfoPrivate Sub Command1_Click()
        Dim strTemp As String
        Dim verTemp As Variant
        Dim intLoop As Integer
      Open "D:\add.txt" For Input As #1
      Do While Not EOF(1)
        ReDim Preserve addinfo(intLoop) As typaddinfo
        Line Input #1, strTemp
        verTemp = Split(strTemp, ":")
        addinfo(intLoop).name = verTemp(0)
        '//这里自己添加
        intLoop = intLoop + 1
       Loop
       Close #1
        
       
    End Sub
      

  11.   

    抱歉 这段代码
     Dim i As Integer
        i = InStr(str, ",")
        str = Mid(str, i + 1)
        str = str & "," & CInt(Rnd * 10000)
        'Dim a As Variant
        a = Split(str, ",")是我调试其他内容时写的
    这里不要的