【发布时间】:2020-08-25 11:20:14
【问题描述】:
我在执行我的子时遇到了时间问题。 例如下面的代码。如果我从 VBA 编辑器执行它需要 4 秒,但如果我使用功能区中的自定义按钮调用它:Public Sub test_sub(control as IRibbonControl) 需要 66 秒。我不明白为什么..
'SUB executed from VBA editor:
Public Sub test_sub()
Dim i As Integer
Dim t As Double
t = Timer
For i = 0 To 20
Call generar_resumen
Next i
Debug.Print " tiempo sub = " & Timer - t
End Sub
'SUB executed from button in Excel Ribbon:
Public Sub test_sub(control as IRibbonControl)
Dim i As Integer
Dim t As Double
t = Timer
For i = 0 To 20
Call generar_resumen
Next i
Debug.Print " tiempo sub = " & Timer - t
End Sub
拜托,有人可以帮助我吗?我不知道该怎么办。
谢谢
【问题讨论】:
-
generar_resumen在做什么的任何信息?也许这是codereview.stackexchange.com的问题 -
子将单元格从一个 Excel 工作表复制到一个新工作表。我做了一些控件,如果你只删除“控件作为 IRibbonControl”,你会加快子的执行速度
-
我投票结束这个问题,因为这个问题属于codereview.stackexchange.com
-
@Storax 虽然这可能是未来 CR 的主题,但请不要以 Code Review 站点的存在作为关闭问题的理由。评估请求并使用需要关注、主要基于意见等原因。然后您可以向 OP 提及它可以在 Code Review 上发布(如果是) on-topic。请看Does being on-topic at another Stack Exchange site automatically make a question off-topic for Stack Overflow?
-
感谢您的提示,我仍然认为它属于 CR 并且应该在此处关闭,因为根据 OP,只有当他从功能区调用它并且他已经应用了通常的技巧时,代码才会很慢关闭事件,计算等。正如链接中提到的,我没有自动 VTC。但是,当然,您可以有不同的意见。