EXCEL求教,如何将一列中每200行数据生成一个TXT文件
- qyjqyj工作中经常需要将excel表格中一列数据中200行复制到一个txt文件,每次都是复制黏贴去做,求教,有啥方便的方法。
网上搜索了一下,也不得法,在这求教大神。
所有数据都在A列,有几万行,都是数字,每200个生成一个TXT文件,文件名从0-1-2-3.....依次下去。
谢谢。 - sakjsak复制代码
- https://www.baidu.com/s?wd=每200行数据生成一个TXT文件&ie=UTF-8
百度第一个不行吗 - qyjqyj
- wuyanzhichengpython?难度应该不高 数据不涉密的话可以发一个样例上来瞅瞅不?
- qyjqyj百度了这个,生成了TXT文件,现在是生成的TXT文件数字前后端都有双引号。
VB脚本是这个:
Sub ff() '。
'前提:bai24000个数据放在当前工du作表zhi的A列中。
'复制从Sub到End Sub之间的dao代码。
'右键点击当前工作表→查看代码→在弹出窗口的"通用"下方的空白处进行Ctrl+v粘贴。
'光标放在Sub到End Sub之间按键盘上的F5键运行代码。
p = "d:\123\" '文件存放在D:\123下,可以修改。
If Dir(p, vbDirectory) = "" Then MkDir p '。
For r = 1 To 24000 Step 200 '。
f = f + 1 '。
Filename = p & Format(f, "000") & ".txt" '。
Open Filename For Output As #1 '。
For i = 1 To 200 '。
Write #1, Cells(r + i - 1, 1) ' 把单元格的内容写入TXT文件中。 数据放在A列中。
Next '。
Close #1 ' 关闭文件。
Next '。
End Sub '。
生成的TXT文件是这个:
"86686304*******"
"86337704*******"
这个引号能不能不要? - sakjsakwrite改成print试试
- qyjqyj现在我是去每个TXT文件中替换这个符号:" 。已经比以前要方便一些了。这个前后的引号有办法不生成吗?
求教,谢谢。 - qyjqyj
- sakjsak
- Max搜到的 改了一下 可以用 但是会卡复制代码
- Sub test()
- Dim ar, i&, j&, s, n&
- ar = [a1].CurrentRegion
- For i = 1 To UBound(ar) Step 100
- n = n + 1
- For j = i To i + 199
- If j > UBound(ar) Then Exit For
- s = s & ar(j, 1) & vbCrLf
- Next j
- Open ThisWorkbook.Path & "\" & n & ".txt" For Output As #1
- Print #1, s
- Close #1
- s = ""
- Next i
- End Sub
- Sub test()
- qyjqyj回复10#Max谢谢,试了一下,好像不行。
- lwjefPrint #1, Trim(Cells(r + i - 1, 1))
- qyjqyj试过了,可以去除前后的空白,这样就完美了,真心说声谢谢。
以下是完整的代码:
Sub ff() '。
'前提:数据放在当前工作表的A列中。
'复制从Sub到End Sub之间的代码。
'右键点击当前工作表→查看代码→在弹出窗口的"通用"下方的空白处进行Ctrl+v粘贴。
'光标放在Sub到End Sub之间按键盘上的F5键运行代码。
p = "d:\1\" '文件存放在D:\1下,可以修改。
If Dir(p, vbDirectory) = "" Then MkDir p '。
For r = 1 To 2000 Step 200 '。
f = f + 1 '。
Filename = p & Format(f, "000") & ".txt" '。
Open Filename For Output As #1 '。
For i = 1 To 200 '。
Print #1, Trim(Cells(r + i - 1, 1)) ' 把单元格的内容写入TXT文件中。 数据放在A列中。
Next '。
Close '。
Next '。
End Sub '。 - lwjef笔芯
- hotlee
execltotxt.zip.001(4.88 MB)
execltotxt.zip.002(4.05 MB)
xlsx改为xxx.xlsx,然后运行,试试这个 - songcoLinux下,xls2csv加split一行搞定 I have spoken.
- ndyongqing
- sakjsak
- Max