返回列表 上一主題 發帖

excel 固定時間內 執行 wbe 查詢

excel 固定時間內 執行 wbe 查詢

之前分享在本區的程式
模組:
Sub auto_open()
   For Each qy In Sheet8.QueryTables
      qy.Refresh BackgroundQuery:=False
    Next
      Application.OnTime Now + TimeValue("00:00:51"), "auto_open"
End Sub

我要如何在 星期一到星期五  09:00 -17:00 開起查詢 其他時間不開

謝謝板上的 大大們

回復 1# lai8061a

利用autoit等軟體!設定時間打開(加入排程),如你所述

vba的程式碼可以加上某些語句,讓其執行後就會關閉

TOP

回復 1# lai8061a
試試看
  1. Option Explicit
  2. Private Sub Auto_Open()
  3.     Dim D As Integer
  4.     D = Weekday(Date, vbMonday)    '以週一為基準傳回星期幾
  5.     If D >= 1 And D <= 5 Then Ex   '週一到週五
  6. End Sub
  7. Private Sub Ex()  '與Auto_Open在同一個一般模組上的程序
  8.     Dim qy As QueryTable
  9.      If Time >= #9:00:00 AM# And Time <= #5:00:00 PM# Then
  10.          For Each qy In Sheet8.QueryTables
  11.             qy.Refresh BackgroundQuery:=False
  12.             qy.RefreshPeriod = 1
  13.             'RefreshPeriod 屬性 傳回或設定兩次更新之間的分鐘數。讀/寫 Long。
  14.         Next
  15.         Application.OnTime #5:00:01 PM#, "Ex"
  16.     ElseIf Time < #9:00:00 AM# Then
  17.         Application.OnTime #9:00:00 AM#, "Ex"   '等候於9:00執行Ex
  18.     ElseIf Time > #5:00:00 PM# Then
  19.         For Each qy In Sheet8.QueryTables
  20.             qy.RefreshPeriod = 0       '取消:兩次更新之間的分鐘數
  21.         Next
  22.         
  23.     End If
  24. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 有時當思無時苦,好天要積雨來糧。
返回列表 上一主題