|
本帖最后由 webroot 于 2011-6-17 09:10 编辑
现有一列数据,大概有4万行,要把此列数据按每1000行数据排列成一行,每个数据间用“;”作分隔符,每一行另存为一个文本文件,这个VBA该怎么写?
aaaa
bbbb
cccc
dddd
eeee
ffff
变成
aaaa;bbbb;cccc;eeee;ffff
”,只有33000,不有在573条!“
楼主这个问题 我在帅哥代码的基础上给完善了一下 帅哥的代码时很好的 我顺着他的思路添加了一段代码 呵呵 代码贴出来 楼主把它贴进帅哥做的表格 给测试下就行了 - Sub 导出文本()
- row1 = Sheets(1).Range("A65536").End(xlUp).Row
- ARR1 = Sheets(1).Range("a1:a" & row1)
- name1 = ThisWorkbook.Path & "" & "导出文件-" & Format(Date, "yyyymmdd")
- name1 = name1 & ".txt"
- Open name1 For Output As #1
- m = UBound(ARR1) \ 1000
- For i = 1 To m
- Do
- l = l + 1
- S = S & ARR1((i - 1) * 1000 + l, 1) & ";"
- Loop While l < 1000
- Print #1, S
- Print #1, vbLf
- l = 0
- S = ""
- Next i
- n = UBound(ARR1) Mod 1000
- For i = 1 To n
- S = S & ARR1(m * 1000 + i, 1) & ";"
- Next i
- Print #1, S
- S = ""
- Close #1
- MsgBox "数据已导出"
- End Sub
复制代码
|
|