vba 分割文本

来源:百度知道 编辑:UC知道 时间:2024/06/23 16:07:15
我想把一个文本文件以100行为单位分割,该怎么做
分割完后还要对文件进行编辑修改,请问怎么实现?
我要分割的是txt文件,我想把他们以每100行为单位分割并保存到不同txt文件当中
??????
to thny: 你用fn = Application.GetOpenFilename("文本文件,*.txt", , "选择文件") 来获得文件,
那如果我已经指定了TXT文件的路径该怎么写?

thny,你可不可以对你的自定变量都给我定义好啊?我不太晓得你这些是干嘛的.
还有,这几句是什么意思:
fs = Left(fn, Len(fn) - 4)
i = 1: st = ""
st = st & s & vbCrLf
为什么你的n还没有初值就可n=n+1?
谢谢

一个大的文本文件分割成若干小的文本文件并保存在与大文件同一目录的程序:
(在Excel中建一个“模块1”,把下面的程序复制进去,执行看看)

Sub sss()
m = 100 '一个子文本的行数在此是100行
fn = Application.GetOpenFilename("文本文件,*.txt", , "选择文件")
If fn = False Then Exit Sub
fs = Left(fn, Len(fn) - 4)
i = 1: st = ""
Close
fname = fs & i & ".txt"
Open fn For Input As 1
Do While Not EOF(1)
Line Input #1, s
st = st & s & vbCrLf
n = n + 1
If n Mod m = 0 Then
Open fname For Output As 2
Print #2, st
Close 2
st = ""
i = i + 1
fname = fs & i & ".txt"
End If
Loop
fname = fs & (i + 1) & ".txt"
Open fname For Output As 2
Print #2, st
Close
End Sub

不知你的文本文件是不是.doc格式的?还有分割完你要进行什么编辑修改?是不是要分割成很多个小文件?你没说清楚没法帮你