返回列表 上一主題 發帖

從a.xls裡面去執行b.xls的commandbutton1;c.xls的commandbutton1.....等

回復 6# gkld
是這樣的
  1. Sub 更新() '001.xls的「更新資料」
  2.     Dim m As Date, n As Date
  3.     Dim XPath As String
  4.     XPath = ThisWorkbook.Path
  5.     '你的所有檔案都在同一資料夾:  C:\Documents and Settings\gkld\My Documents\
  6.     '檔案未開啟:    檔案名稱需是完整檔案名稱 前後 加 ' ->   '檔案名稱'!模組名稱.程序名稱
  7.     Run "'" & ThisWorkbook.Path & "\004.xls'!資料更新.更新"

  8.     '檔案已啟時    只需: 活頁簿名稱!模組名稱.程序名稱
  9.     Run "004.xls!資料更新.更新"
  10.     Run "005.xls!資料更新.更新" '...
  11.     Run "006.xls!資料更新.更新" '...
  12.     Run "007.xls!資料更新.更新" '...
  13. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

本帖最後由 GBKEE 於 2013-4-14 16:46 編輯

回復 10# gkld
每一個活頁簿的 [更新] 因活頁簿關閉而停止了VBA的運作
  1. 'Workbooks("004.xls").Save  註解掉不執行
  2. 'Workbooks("004.xls").Close 註解掉不執行
複製代碼
001.xls的 CommandButton1_Click
  1. Private Sub CommandButton1_Click()
  2.     Dim XPath As String, E As Variant
  3.     Call 更新
  4.     XPath = "C:\Documents and Settings\gkld\桌面\my kp\資料庫\上市類股"
  5.     Application.ScreenUpdating = False
  6.     For Each E In Array("004.xls", "005.xls", "016.xls", "017.xls", "018.xls", "019.xls")
  7.         Run "'" & XPath & "\" & E & "'!資料更新.更新"
  8.         Workbooks(E).Close True
  9.     Next
  10.     Application.ScreenUpdating = True  '更新成功就出現ok
  11.     MsgBox "OK"
  12. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 是非當教育,讚美作警惕。
返回列表 上一主題