关于excel文件转成txt文本文件的问题
我有一个excel文件格式如下:
第一列 第二例 第三例 第四列 第五列
期初余额 本期增加 本期减少 项目单位
aa 111 222 333 北京科技局
12 23 34 45
以上是报表部分格式,我想将此报表导出成txt文本格式如下:
第一列 如果有数据就用0表示,没有就不填,第二列添报表中数据的行号,第三列添报表中有数据的列次,第四列根据报表的数据添相应的数据类型(3-数字形,5-字符型),第五列添报表单元格数值。
以上excel导出的txt文本应为:
第一列 第二例 第三例 第四列 第五列
0 1 2 3 111
0 1 3 3 222
0 1 4 3 333
0 1 5 5 北京科技局
以上就是我想实现的效果,如何用vba语言实现,请大家帮忙,谢谢!
[解决办法]
Private Sub Command1_Click()Sub Command1_Click()
TxtToExcel "E:\1.txt", " "
End Sub
Sub TxtToExcel()Sub TxtToExcel(txtFile As String, DistanceChar As String)
On Error GoTo L
'建立excel对象
Dim XlApp As New Excel.Application
Dim XlWb As New Excel.Workbook
Dim XlSt As New Excel.Worksheet
Set XlApp = CreateObject("Excel.Application")
Set XlWb = XlApp.Workbooks.Add
XlWb.SaveAs FileName:=Left(txtFile, Len(txtFile) - 4) & ".xls"
Set XlSt = XlWb.Worksheets(1)
'开始转换
Dim i As Integer, j As Integer, linenext As String, strb() As String
j = 1
Open txtFile For Input As #1
Do Until EOF(1)
Line Input #1, linenext
strb = Split(linenext, DistanceChar)
For i = 0 To UBound(strb)
XlSt.cells(j, i + 1) = strb(i)
Next
j = j + 1
Loop
Close #1
'结束,释放空间
XlWb.Save
XlWb.Close
XlApp.quit
MsgBox "finished"
Exit Sub
L:
MsgBox "Wrong"
End Sub
[解决办法]
支持搂主,收藏
[解决办法]
不知,帮顶