兩個"獨立"運作的Excel活頁薄如何用DDE互傳資訊??
- 帖子
- 11
- 主題
- 4
- 精華
- 0
- 積分
- 51
- 點名
- 0
- 作業系統
- xp
- 軟體版本
- 2010
- 閱讀權限
- 20
- 註冊時間
- 2013-11-14
- 最後登錄
- 2018-8-6
|
兩個"獨立"運作的Excel活頁薄如何用DDE互傳資訊??
小弟有兩個Excel 檔案必須獨立開Excel 去運作程式.....因為開單一Excel程式會出錯~
我知道一個Excel開兩個檔案可以用DDE字串打在格子裡便可互傳資料,但獨立開兩個Excel就無法傳送資料....
這種情況我是否需要用到API去連接兩本獨立的運作的活頁薄?技術上可行嗎?謝謝各位大大
ps:我不想用csv去互傳資料....要即時的 |
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
2#
發表於 2013-11-14 20:21
| 只看該作者
回復 1# samsung2888
請上傳檔案,否則難以理解你的真正問題。 |
|
|
|
|
|
|
- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
3#
發表於 2013-11-15 08:59
| 只看該作者
回復 1# samsung2888
第一個Excel: ThisWorkbook的程式碼- Public APP As New Application
- Private Sub Workbook_Open()
- APP.Visible = True '第二個Excel: 顯示
- APP.Workbooks.Open ("D:\BOOK1.XLS") 第二個Excel:開啟活頁簿
- End Sub
-
複製代碼- Sub Ex()
- ThisWorkbook.Sheets(1).[A1] = APP.Workbooks(1).Sheets(1).[A1]
- End Sub
複製代碼 |
|
|
|
|
|
|
- 帖子
- 11
- 主題
- 4
- 精華
- 0
- 積分
- 51
- 點名
- 0
- 作業系統
- xp
- 軟體版本
- 2010
- 閱讀權限
- 20
- 註冊時間
- 2013-11-14
- 最後登錄
- 2018-8-6
|
4#
發表於 2013-11-16 09:55
| 只看該作者
回復 3# GBKEE
GBKEE大大....你太厲害了!!!我就是要找這個方法!!這問題困擾了我很久....果然是超級版主....真的非常感恩.....謝謝!!!!:handshake |
|
|
|
|
|
|
- 帖子
- 39
- 主題
- 4
- 精華
- 0
- 積分
- 48
- 點名
- 0
- 作業系統
- windows 7
- 軟體版本
- sp1
- 閱讀權限
- 10
- 性別
- 男
- 註冊時間
- 2013-2-2
- 最後登錄
- 2014-8-26
|
5#
發表於 2014-7-7 15:39
| 只看該作者
回復 3# GBKEE
GBKEE大大,你好!
按您的程序
如果BOOK1.XLS放在某個目錄下- Public APP As New Application
- Private Sub Workbook_Open()
- APP.Visible = True '第二個Excel: 顯示
- APP.Workbooks.Open "D:\programs\BOOK1.XLS" '第二個Excel:開啟活頁簿
- End Sub
複製代碼 結果下面執行出現錯誤訊息=「執行階段錯誤424」說明此觸需要物件。- Sub Ex()
- ThisWorkbook.Sheets(1).[A1] = APP.Workbooks("D:\programs\BOOK1.XLS").Sheets(1).[A1]
- End Sub
複製代碼 請問哪裡出錯? |
|
人生只有三天,只有活在今天最踏實
|
|
|
|
|
- 帖子
- 258
- 主題
- 77
- 精華
- 0
- 積分
- 385
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 20
- 性別
- 男
- 來自
- Taiwan
- 註冊時間
- 2010-8-8
- 最後登錄
- 2021-1-25
|
6#
發表於 2014-7-8 10:05
| 只看該作者
回復 3# GBKEE
GBKEE大大,你好!
按您的程序
自己練習
Private Sub CommandButton4_Click()
Set wb = ThisWorkbook
Application.Visible = True
APP.Visible = True
APP.Workbooks.Open ThisWorkbook.Path & "\B.xls"
APP.Workbooks("\B.xls").Sheets(1).Cells.Copy wb.Sheets(1).Cells '偵錯到此列
'Set APP = Nothing
Application.Visible = False
End Sub
1.如何可將Workbooks("\B.xls").Sheets(1).Cells 整個copy 到 wb.Sheets(1).
可用 CopyAs ?
2.APP.Workbooks("\B.xls").Sheets(1)可寫入嗎?
敬請指導 |
|
|
|
|
|
|
- 帖子
- 1018
- 主題
- 15
- 精華
- 0
- 積分
- 1058
- 點名
- 0
- 作業系統
- win7 32bit
- 軟體版本
- Office 2016 64-bit
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 桃園
- 註冊時間
- 2012-5-9
- 最後登錄
- 2022-9-28
|
7#
發表於 2014-7-9 22:59
| 只看該作者
回復 5# barrykuo
Ex()中 Workbooks("D:\programs\BOOK1.XLS") 錯誤
改為
Workbooks("BOOK.XLS") 或 Workbooks(1) |
|
|
|
|
|
|
- 帖子
- 258
- 主題
- 77
- 精華
- 0
- 積分
- 385
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 20
- 性別
- 男
- 來自
- Taiwan
- 註冊時間
- 2010-8-8
- 最後登錄
- 2021-1-25
|
8#
發表於 2014-7-9 23:44
| 只看該作者
回復 6# yangjie
自己 Try 很久 終於可 cells.copy
功力差,所以很長
Private Sub CommandButton4_Click()
Set wb = ThisWorkbook
wb.Activate
Application.Visible = True
APP.Visible = True
Application.DisplayAlerts = False
Set wb1 = APP.Workbooks.Open(ThisWorkbook.Path & "\B.xls", True, False)
wb1.Activate
APP.Workbooks(1).Sheets(1).Activate
APP.Cells.Copy
wb.Activate
Windows("A.xls").Activate
Sheets(1).Cells.ClearContents
Cells(1, 1).Select
ActiveSheet.Paste
APP.CutCopyMode = False
Application.CutCopyMode = False
wb.Save
APP.Quit
Sheets(1).Cells(1, 1).Activate
Application.DisplayAlerts = True
Application.Visible = False
End Sub
若要copy 多頁 就累了 |
|
|
|
|
|
|
- 帖子
- 39
- 主題
- 4
- 精華
- 0
- 積分
- 48
- 點名
- 0
- 作業系統
- windows 7
- 軟體版本
- sp1
- 閱讀權限
- 10
- 性別
- 男
- 註冊時間
- 2013-2-2
- 最後登錄
- 2014-8-26
|
9#
發表於 2014-7-10 13:05
| 只看該作者
回復 7# stillfish00
回stillfish00大大,謝謝您!
可我真的存一個文件叫[book1.xls],而且存在目錄為[D:\programs底下],按GBKEE大大程序執行Ex巨集出現錯誤訊息=「執行階段錯誤424」說明此觸需要物件。
所以不懂Ex()底下這樣寫是不是不對,APP.Workbooks("D:\programs\BOOK1.XLS").Sheets(1).[A1]。
感謝你們! |
|
人生只有三天,只有活在今天最踏實
|
|
|
|
|
- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
10#
發表於 2014-7-10 17:20
| 只看該作者
回復 8# yangjie - Private Sub CommandButton4_Click()
- With New Application
- .Visible = True
- .Workbooks.Open (ThisWorkbook.Path & "\B.xls")
- .Workbooks("B.xls").Sheets(1).Cells.Copy
- With ThisWorkbook.Sheets(1)
- .Range("A1").Select
- .PasteSpecial Format:="XML 試算表"
- End With
- .Application.CutCopyMode = False
- .Quit
- End With
- End Sub
複製代碼 |
|
|
|
|
|
|