我有以下宏来刷新我的工作簿。此时,这与单击全部刷新按钮相同。是否有时间元素可以添加到此代码中,以便刷新所有数据连接以及所有工作表上的所有计算每15分钟一次。
工作簿具有从SharePoint列表项中提取数据的单元格,并且还包含典型的公式计算。
$("#tabStrip").kendoTabStrip({
select: function(event) {
// Detect if this is a case where override is needed
event.preventDefault();
// Navigate to the desired content
}
});
答案 0 :(得分:1)
您可以使用Application.OnTime
方法安排将来运行的宏:https://msdn.microsoft.com/en-us/library/office/ff196165.aspx
然而,这只是一次性活动。为了使其递归,您必须在该宏(又一次)中包含另一个Application.OnTime
以确保每隔15分钟进行一次调用"
答案 1 :(得分:1)
在标准模块中输入以下内容:
Public RunWhen As Double
Public Const cRunIntervalMinutes = 15
Public Const cRunWhat = "Workbook_RefreshAll"
Sub StartTimer()
RunWhen = Now + TimeSerial(0, cRunIntervalMinutes, 0)
Application.OnTime earliesttime:=RunWhen, procedure:=cRunWhat, _
schedule:=True
End Sub
Sub StopTimer()
On Error Resume Next
Application.OnTime earliesttime:=RunWhen, _
procedure:=cRunWhat, schedule:=False
End Sub
Sub Workbook_RefreshAll()
Application.CalculateFullRebuild
ActiveWorkbook.RefreshAll
Call StartTimer
End Sub
开始流程运行StartTimer()
并结束流程运行StopTimer()
改编自Chip Pearson's Site
我使用了一些形状来运行宏:
答案 2 :(得分:0)
刷新您可以使用的所有计算:
application.Calculate
P.S。:对不起我的英文