我想把TXT文件转成EXCEL(并以*.swp的文件名保存)
这段TXT是规则的,如下:
商品号       商品名称       总数        客户名
001          XXX            100         A
002          XXXX           200         B
..........
请问高手,怎么把TXT文件转成EXCEL
请给出具体方法,和部分重要代码,谢了

解决方案 »

  1.   

    你用vba就能转换了,现在没时间,晚上给你写
      

  2.   

    看看:
    http://search.csdn.net/Expert/topic/831/831323.xml?temp=.216366
      

  3.   

    http://search.csdn.net/Expert/topic/295/295066.xml?temp=.9537012
      

  4.   

    首先,你这个没格式,导起来麻烦,建议改成用“,”分隔的
    引用邹健的东东:
    如果要用你上面的语句插入的话,文本文件必须存在,而且有一行:姓名,银行账号1,银行账号2
    然后就可以用下面的语句进行插入
    注意文件名和目录根据你的实际情况进行修改.
    insert into
    opendatasource('MICROSOFT.JET.OLEDB.4.0'
    ,'Excel 5.0;HDR=YES;IMEX=2;DATABASE=c:\a.xls'
    --,Sheet1$)
    )...[Sheet1$](字段1,字段2)
    select 字段1,字段2
    from opendatasource('MICROSOFT.JET.OLEDB.4.0'
    ,'Text;HDR=Yes;DATABASE=C:\'
    )...[aa#txt]
      

  5.   

    那么这样吧,我直接用Tab键来分割,请问Tab的常数名是什么?
      

  6.   

    那么这样吧,我直接用Tab键来分割,请问Tab的常数名是什么?有人回答吗?UP
      

  7.   

    我写的,写Excel的函数
    读文本文件应该没有问题吧?
    首先需要在VB设计时引用EXCEL对象库Public Sub RsToXls(RsSrc As ADODB.Recordset)
    Dim MyXlsApp As New Excel.Application
    Dim MyXlsWbk As New Excel.Workbook
    Dim MyXlsSht As New Excel.Worksheet
    Dim i, j, k, m, n As Integer
    Set MyXlsApp = CreateObject("Excel.Application")
    Set MyXlsWbk = MyXlsApp.Workbooks.Add
    Set MyXlsSht = MyXlsWbk.Worksheets(1)MyXlsApp.Visible = TrueWith RsSrc
        If RsSrc Is Nothing Then
            MsgBox "没有数据,无法导出", vbExclamation
            Exit Sub
        ElseIf .RecordCount = 0 Then
            MsgBox "没有数据,无法导出", vbExclamation
            Exit Sub
        End If
        .MoveFirst
        j = 1
        'MyXlsSht.Cells(1, 1).Value = "序号"
        For m = 0 To .Fields.Count - 1
            MyXlsSht.Cells(1, m + 1).Value = .Fields(m).Name    Next
        Do While Not .EOF
            j = j + 1
            MyXlsSht.Cells(j, 1) = j - 1
            For i = 0 To RsSrc.Fields.Count - 1
                Select Case RsSrc.Fields(i).Type
                Case 7                                          '如果是日期类型
                    MyXlsSht.Cells(j, i + 1).NumberFormatLocal = "yyyy-m-d"
                End Select
                MyXlsSht.Cells(j, i + 1) = .Fields(i)
            Next
            .MoveNext
        Loop
    End With
    'MyXlsApp.Visible = True
    Set MyXlsApp = Nothing
    Set MyXlsWbk = Nothing
    Set MyXlsSht = Nothing'MsgBox "数据导出完成", vbInformation       
    End Sub
      

  8.   

    对了,如果需要保存使用
    MyXlsWbk.SaveAs方法
      

  9.   

    那么这样吧,我直接用Tab键来分割,请问Tab的常数名是什么?
    //vbTab或者chr(9)