程序目标是将一个excel中的数据导出到另外一个excel。格式是相同的。在vba中导出的速度非常快。但转换为vb语言时却慢的出奇。不知是何缘故?下面是本段程序的vb代码。请高手指点。如果能够解决此问题在原50分上在追加50分。非常急!
For i = 9 To 90
If appexcel.Workbooks(BookName).Sheets("参数").Range("b" & i).Value = "" Then
Exit For
End If
If appexcel.Workbooks(BookName).Sheets("参数").Range("f" & i).Value = "" Then
GoTo NextFor
End If
If (appexcel.Workbooks(BookName).Sheets("cs").Range("j" & i).Value Or (Not appexcel.Workbooks(BookName).Sheets("参数").Range("f" & i).Value = "")) Then
SheetName = appexcel.Workbooks(BookName).Sheets("参数").Range("b" & i).Value
Pages = appexcel.Workbooks(BookName).Sheets("cs").Range("i" & i).Value
SumFlag = appexcel.Workbooks(BookName).Sheets("cs").Range("k" & i).Value
MaxCol = UCase(Right(appexcel.Workbooks(BookName).Sheets("cs").Range("l" & i).Value, 1))
If n > SheetN Then
appexcel.Sheets.Add After:=Sheets(n - 1)
End If
appexcel.Sheets(n).Name = SheetName
appexcel.Sheets(n).Select
vb中将excel数据导出到excel时速度为什么导出速度缓慢?
答案:3 悬赏:80
解决时间 2021-03-08 15:46
- 提问者网友:刪除丶後
- 2021-03-07 19:08
最佳答案
- 二级知识专家网友:丢不掉的轻狂
- 2021-03-07 19:50
那就用filecopy的办法嘛。
全部回答
- 1楼网友:木子香沫兮
- 2021-03-07 21:14
楼主提出得问题,在这里貌似没有人会,建议楼主蹲百度知道都比这里得到答案得几率大…望采纳。
- 2楼网友:一池湖水
- 2021-03-07 21:05
首先应该好好分析一下你的情况:
1、是否两个文件已经打开了。
2、可以在代码的前面加上:Application.ScreenUpdating = False
后面加上:Application.ScreenUpdating = true
3、还有一种方法如下,应该也是最方法、最快的了:
Sheets("Sheet2").Range("a" & ArgSheetRow1 - 1 & ":h" & ArgSheetRow2).Value = Sheets("Sheet1").Range("a" & ArgSheetRow1 - 1 & ":h" & ArgSheetRow2).Value
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯