Vba makro在两次(上午6:00至8:00)之间刷新excel文件(所有连接)

Vba makro在两次(上午6:00至8:00)之间刷新excel文件(所有连接),vba,excel,batch-file,Vba,Excel,Batch File,大家好这里是故事: 我正在使用一个excel文件,该文件从各种PowerPivot连接中提取数据,刷新大约需要15分钟。我写了一个简单的makro来重新格式化文件并保存它。然后我试图通过批处理文件触发它。不幸的是,我不熟悉excel markos和批处理文件,所以我只能通过批处理文件打开excel文件。因此,我正在寻找一个makro,它可以在excel文件打开时自动刷新(并保存),但只能在上午6:00到8:00之间。现在,我可以触发批处理文件在7:00打开excel文件,当我开始工作时,我可以打

大家好这里是故事:

我正在使用一个excel文件,该文件从各种PowerPivot连接中提取数据,刷新大约需要15分钟。我写了一个简单的makro来重新格式化文件并保存它。然后我试图通过批处理文件触发它。不幸的是,我不熟悉excel markos和批处理文件,所以我只能通过批处理文件打开excel文件。因此,我正在寻找一个makro,它可以在excel文件打开时自动刷新(并保存),但只能在上午6:00到8:00之间。现在,我可以触发批处理文件在7:00打开excel文件,当我开始工作时,我可以打开刷新的excel文件,而无需等待15分钟直到刷新

非常感谢,菲尔

p、 美国。 这个问题非常类似于: 但我需要做一些调整

sub Launcher()
    application.ontime 42647.42 , "refresher" 'time of refresh
    'you may make a loop to set several ontime, one every 15min, I'm too lazy for that
end sub
sub refresher()
    calculate
    thisworkbook.save
end sub
编辑:也许你在想:

Private Sub Workbook_Open()
    if now-int(now) > 6/24 and  now-int(now)  <8/24 then refresher
end sub
Private子工作簿\u Open()

如果now int(now)>6/24和now int(now),则在打开的工作簿中需要一个if语句,因此如果时间>时间序列(6,0,0),则需要类似的UpdateWorkbook()。不需要预定的方法我认为不需要实时,正如op所说,在6点到8点之间,所以我认为工作簿是打开的,检查时间,然后在时间超过6点时打电话给复习员,是的,我还没有喝咖啡(这里是上午10点),并且认为他想在特定的时间启动。:-)我会在早上9点编辑我的答案,我发现了:)我不是早起的人。。。太多的文字,我无法正确阅读所有。。。XD非常感谢编辑版+复习版正在做这项工作,谢谢!