Oli*_*tti 3 excel vba excel-vba user-defined-functions
我正在编写一个UDF,它通过多次尝试从网站获取数据,因此可能需要一段时间(10秒钟)来计算.问题是Excel冻结,直到完全计算UDF.
我想在调用单元格中编写"检索数据...",同时下载和处理数据而不挂起Excel.一旦函数结束,将文本更改为结果.
这可以实现吗?
小智 7
在公共模块代码表中假设以下UDF.
Function retrievingData()
Dim i As Long, t As Double
For i = 1 To 2
'Debug.Print i
t = Now + TimeSerial(0, 0, 2)
Do While Now < t
DoEvents
Loop
Next i
retrievingData = 99
End Function
Run Code Online (Sandbox Code Playgroud)
接下来,根据以下公式在A2中创建条件格式设置规则.
=not(a2)
Run Code Online (Sandbox Code Playgroud)
单击格式并指定自定义数字格式,
"Retrieving data..."
Run Code Online (Sandbox Code Playgroud)
最后,将UDF放入A2.
=retrievingData()
Run Code Online (Sandbox Code Playgroud)
警告:您可能需要多个DoEvents循环才能使您自己的UDF正常运行.每一个都会减慢速度.
| 归档时间: |
|
| 查看次数: |
62 次 |
| 最近记录: |