标题: [文本处理] 请教各位,怎样才能将结果导出到excel的第二列呢 [打印本页]
作者: lengguoyong 时间: 2011-7-11 07:52 标题: 请教各位,怎样才能将结果导出到excel的第二列呢
请教各位大侠,我有文本a.txt
111;222;333;444
555;666;777;888
999;101;102;103
我先提取文本a.txt第二列数据到b.excel后,我想再提取文本a.txt第四列数据到b.excel的第二列,注意是导出到excel的第二列,这该怎么弄啊。请各位大侠指点
作者: ArdentMan 时间: 2011-7-11 08:34
本帖最后由 ArdentMan 于 2011-7-11 08:36 编辑
- Dim Path, FSO, EXCEL, Book, Arr, Str
- Path = CreateObject("Wscript.Shell").CurrentDirectory & "\"
- Set FSO = CreateObject("Scripting.FileSystemObject")
- Str = FSO.OpenTextFile("a.txt").ReadAll()
- Arr = Split(Str, vbCrLf)
- Set FSO = Nothing
- Set EXCEL = CreateObject("Excel.Application")
- EXCEL.Visible = False
- Set Book = EXCEL.Workbooks.Open(Path & "b.xls")
- For Each Str In Arr
- If Str <> "" Then
- i = i + 1
- EXCEL.Cells(i, 2).value = Split(Str, ";")(3)
- End If
- Next
- Book.Save
- Book.Close
- Set Book = Nothing
- EXCEL.Quit
- Set EXCEL = Nothing
- MsgBox "导入完成!", , "ArdentMan友情提示"
复制代码
注:
楼主的文本式样中的分隔符是全角的分号,是不是搞错了,如果搞错了请将代码Split(Str, ";")(3)中的全角分号改为半角分号,b.excel应该为b.xls,代码保存为test.vbs到a.txt和b.xls所在目录中双击运行,有问题请及时反馈~~~
作者: lengguoyong 时间: 2011-7-11 09:05
奥 谢谢ArdentMan 大哥, Str = FSO.OpenTextFile("a.txt").ReadAll()
这句怎么报错呢,还有批处理能有达到这样的目的不啊
作者: ArdentMan 时间: 2011-7-11 09:13
本帖最后由 ArdentMan 于 2011-7-11 09:16 编辑
3# lengguoyong
改为Str = FSO.OpenTextFile(Path & "a.txt").ReadAll()
批处理不能对已有的xls文件进行操作,除非是用cmd直接生成的xls文件。
作者: lengguoyong 时间: 2011-7-11 09:15
改为了这个好像也不行,我直接把绝对路径填了就好了 , 请问批处理能实现这样的功能不啊
作者: lengguoyong 时间: 2011-7-11 09:54
如果a.txt文本前面有5行不相关数据,如何跳开这5行数据,然后再取下面第四列数据到excel啊,
作者: ArdentMan 时间: 2011-7-11 10:06
- Dim Path, FSO, EXCEL, Book, Arr, Str
- Path = CreateObject("Wscript.Shell").CurrentDirectory & "\"
- Set FSO = CreateObject("Scripting.FileSystemObject")
- Str = FSO.OpenTextFile(Path & "a.txt").ReadAll()
- Arr = Split(Str, vbCrLf)
- Set FSO = Nothing
- Set EXCEL = CreateObject("Excel.Application")
- EXCEL.Visible = False
- Set Book = EXCEL.Workbooks.Open(Path & "b.xls")
- i = -5
- For Each Str In Arr
- If Str <> "" Then
- i = i + 1
- If i > 0 Then EXCEL.Cells(i, 2).value = Split(Str, ";")(3)
- End If
- Next
- Book.Save
- Book.Close
- Set Book = Nothing
- EXCEL.Quit
- Set EXCEL = Nothing
- MsgBox "导入完成!", , "ArdentMan友情提示"
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |