以下是引用toopoor在2007-4-14 12:52:31的发言:在个人宏工作薄里面新建一个模块,将下面代码加进去,然后将我附件里面的四个文件放到桌面上,就会实现新建一个文件,打开一个文件1.txt,取数,粘到新建的文件里,关闭1.txt,再打开下2.txt,取数,追加到新建的文件里,再关闭文件2.txt…… 不知道能否对你有所启发。 Sub Macro1()
Workbooks.Add a = ActiveWorkbook.Name Range("A1").Select ActiveCell.FormulaR1C1 = "姓名" Range("B1").Select ActiveCell.FormulaR1C1 = "年龄" '————————上面一段是新建一个文件,并且在新文件里面输入表头。———————— '下面进入循环语句,自动打开和关闭文件,自动取数。对文件文件的打开,可以用录制宏来做。 For i = 1 To 4 Workbooks.OpenText Filename:= _ "C:\Documents and Settings\Administrator\桌面\" & i & ".txt", Origin:=936, StartRow:= _ 1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _ ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False _ , Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1)), _ TrailingMinusNumbers:=True
Range("A2:B2").Select Selection.Copy Windows(a).Activate Range("a65536").End(xlUp).Offset(1, 0).Select ActiveSheet.Paste Windows(i & ".txt").Close '关闭文件。 Next End Sub
该段代码我测试过了,好用的,就是可以在文件打开的路径上有点问题,并不一定每个人的用户都是Administrator,可以自己再打个路径,最简单就是把4个文本文件放在一个盘的根目录下,如D:\,呵呵!希望楼主也试试。只是,看程序运行的速度并不快,可能是开关文件都要用很多时间,这样,1500个文件就算是自动运行的话,也要很久了。 |