vba excel循环查询运行的时候非常慢,怎么回事,语句如下
vbaexcel循环查询运行的时候非常慢,怎么回事,语句如下Fordc=2Tom-1fir=Cells(dc,1)Fordcx=dc+1Tomsce=Cells(dcx,...
vba excel循环查询运行的时候非常慢,怎么回事,语句如下
For dc = 2 To m - 1
fir = Cells(dc, 1)
For dcx = dc + 1 To m
sce = Cells(dcx, 1)
If sce = fir Then
rows(dcx).delete
End If
hl_count‘删除后,用于重新计算有字符的行的数量m的子过程sub
Next
Next
是我的m大致为500的时候,运行时间非常长,语句没有问题,要知道我实际工作中m=1万多
但是excel开内存很少,运行很慢,cpu:4100;主板:映泰880GZ,内存8G,内存运行不上去
为什么会这么非常慢? 展开
For dc = 2 To m - 1
fir = Cells(dc, 1)
For dcx = dc + 1 To m
sce = Cells(dcx, 1)
If sce = fir Then
rows(dcx).delete
End If
hl_count‘删除后,用于重新计算有字符的行的数量m的子过程sub
Next
Next
是我的m大致为500的时候,运行时间非常长,语句没有问题,要知道我实际工作中m=1万多
但是excel开内存很少,运行很慢,cpu:4100;主板:映泰880GZ,内存8G,内存运行不上去
为什么会这么非常慢? 展开
3个回答
展开全部
电脑太好,代码太差
1万行5s之内肯定没有问题,1s也很正常
把你的问题、表格的格式、数据的位置等写清楚我直接给你写代码,我不太喜欢修改别人的代码。
1万行5s之内肯定没有问题,1s也很正常
把你的问题、表格的格式、数据的位置等写清楚我直接给你写代码,我不太喜欢修改别人的代码。
更多追问追答
追问
列1中所有有字符的单元格比较,找到字符相同的,删除字符重复行,只留下一个
追答
'试一下速度:
Sub test()
Dim i As Long, dic, temp As String
Application.ScreenUpdating = False
Set dic = CreateObject("scripting.dictionary")
For i = 1 To Range("a65536").End(xlUp).Row
temp = Cells(i, 1)
If Not dic.exists(temp) Then dic.Add temp, 1 Else dic(temp) = dic(temp) + 1
Next
For i = Range("a65536").End(xlUp).Row To 1 Step -1
temp = Cells(i, 1)
If dic(temp) > 1 Then
dic(temp) = dic(temp) - 1
Rows(i).Delete
End If
Next
Application.ScreenUpdating = True
End Sub
展开全部
Sub 删除重复()
Application.ScreenUpdating = False
endrow = Range("A65536").End(xlUp).Row
h = 1
Do While h <= endrow
h = h + 1
For i = endrow To h + 1 Step -1
If Cells(h, 1).Value = Cells(i, 1).Value Then
Rows(i).Delete
endrow = endrow - 1
End If
Next
Loop
Application.ScreenUpdating = True
End Sub
Application.ScreenUpdating = False
endrow = Range("A65536").End(xlUp).Row
h = 1
Do While h <= endrow
h = h + 1
For i = endrow To h + 1 Step -1
If Cells(h, 1).Value = Cells(i, 1).Value Then
Rows(i).Delete
endrow = endrow - 1
End If
Next
Loop
Application.ScreenUpdating = True
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
计算行的数量语句不知你用的什么方式
如果用单元格循环就太慢了,直接用END公式取
如果用单元格循环就太慢了,直接用END公式取
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询