导出文件已经存在,新的运算结果继续添加到这个已经存在的文件里,请问如何修改代码?

RICHEER COCA 2021-05-10 07:14:05

Private Sub CommandButton2_Click()
Dim myFso
Dim myTxt
Dim brr(), Arr, tim, dah, i, zdh, dh
dh = Range("c400000").End(xlUp).Row
If dh < 3 Then MsgBox "运行错误:" & Chr(13) & "表中无数据!": End
tim = Timer
zdh = Range("c400000").End(xlUp).Row
Set myFso = CreateObject("Scripting.FileSystemObject")
Set myTxt = myFso.CreateTextFile(Filename:=ThisWorkbook.Path & "\运算结果.txt", OverWrite:=True)
With myTxt
dah = Range("c400000").End(xlUp).Row
Arr = Range("b1:g" & dah)
ReDim brr(1 To dah)
For i = 3 To UBound(Arr)
brr(i) = Arr(i, 1) & "," & Arr(i, 2) & "," & Arr(i, 3) & "," & Arr(i, 4) & "," & Arr(i, 5)
Next
For i = 1 To dah
.WriteBlankLines 1
.Write brr(i)
Next
.Close
End With
[q1] = "计时 " & Format(Timer - tim, "0.00") & " 秒"
MsgBox "运算完毕" & Chr(13) & " “运算结果”保存E:\test!"
Set myTxt = Nothing
Set myFso = Nothing
End Sub

问题:
1/不改变For i = 3这个代码,因为EXCEL表前2行有数据,如何让导出的TXT没有3行空格?新手学习ING
引用
For i = 3 To UBound(Arr)
brr(i) = Arr(i, 1) & "," & Arr(i, 2) & "," & Arr(i, 3) & "," & Arr(i, 4) & "," & Arr(i, 5)

2/导出路径设定为 E:\test\运算结果.txt, 如果导出文件 [运算结果.txt] 存在的话,导出的数据就继续添加到这个运算结果.txt中。如何修改代码,如果不能这样添加数据,那么第二次的导出文件就不要覆盖原来的导出文件,新建立一个序号为1.TXT,下一个导出文件为2.TXT.。。。。。。文件名是1,2,3,4.。。。文件名为自然数递增。如何修改代码?新手学习ING
...全文
154 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
RICHEER COCA 2021-05-10
  • 打赏
  • 举报
回复
在导出功能上。可以导出顺序txt文件。 每次导出新建一个TXT,文件名自动增加,TXT前3行不能是空格, 请问如何修改代码?

2,462

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧