- 帖子
- 150
- 主題
- 40
- 精華
- 0
- 積分
- 215
- 點名
- 0
- 作業系統
- windows xp
- 軟體版本
- sp3
- 閱讀權限
- 20
- 註冊時間
- 2013-7-15
- 最後登錄
- 2025-5-26
|
本帖最後由 blue2263 於 2019-5-1 15:06 編輯
ex.rar (29.08 KB)
兩個獨立EXCEL 資料互傳,附件是在網站上找到的相關檔案,稍微修改了一下,
己較符合我所需,但有一點不知如何修改,相請教大大
附檔的操作是將1.xlsm,打開然後,執行開始程序,
該程序直接打開新的EXCEL開啟2.xlsm,然後定期將資料傳到2.xlsm
我不想由開始程序開啟Excel軟體及檔案
我想改為手動先打開兩個EXCEL各自打開1.xlsm &2.xlsm檔案後,直接資料互傳
請教大大 要如何修改程式碼
如何將變數Set book1 = 直接定義為2.xlsm
再煩請大大協助幫忙,謝謝- Dim app1 As Object, book1 As Excel.Workbook, UMode As Byte
- Dim sourcedata As Range, targetdata As Range, temp() As Variant
- Public Sub 開始()
- UMode = 1
- Set app1 = CreateObject("Excel.Application")
- Set book1 = app1.Workbooks.Open(ThisWorkbook.Path & "\" & "2.xlsm")
- app1.Visible = True
- Set sourcedata = Range("A2:I2")
- Set targetdata = book1.Sheets("b").Range("A2:I2")
- Call 資料跨程式轉寫
- End Sub
- Public Sub 停止()
- UMode = 0
- Set app1 = Nothing
- Set book1 = Nothing
- End Sub
- Public Sub 資料跨程式轉寫()
- If UMode = 0 Then Exit Sub
- Cells(2, 2) = Cells(2, 2) + 2
- temp = sourcedata
- targetdata.Value = temp '轉寫
- Application.OnTime Now + TimeValue("00:00:01"), "工作表1.資料跨程式轉寫" '每一秒轉寫一次
- End Sub
複製代碼 |
|