PCZONE 討論區

PCZONE 討論區 (https://www.pczone.com.tw/vbb3/)
-   -- OFFICE 相 關 軟 體 討 論 版 (https://www.pczone.com.tw/vbb3/forum/5/)
-   -   【教學】Excel VBA - 從Word表格取回資料 (https://www.pczone.com.tw/vbb3/thread/5/61970/)

leonchou 2002-10-20 12:08 AM

【教學】Excel VBA - 從Word表格取回資料
 
如何從Word表格取回資料至Excel工作表?
我所知的方法有 DDE 和 OLE,
但我只會用 OLE 囉...

[color=red]Sub[/color] get_word_table( )
1 Dim wrdApp As Object
2 Set wrdApp = CreateObject("Word.Application")
3 Set wrdDoc = wrdApp.Documents.Open("D:\Temp\ole_test.doc")
4 With wrdDoc.Tables(1)
5  For r = 1 To .Rows.Count
6   For c = 1 To .Columns.Count
7   Cells(r, c) = .Cell(r, c)
8   Next c
9  Next r
10 End With
11 wrdDoc.Close [color=green]'close the document[/color]
12 wrdApp.Quit [color=green]'close Word[/color]
13 Set wrdDoc = Nothing
14 Set wrdApp = Nothing
[color=red]End Sub[/color]

[color=blue][b]逐行說明[/b][/color][list=1][*]宣告一個物件變數wrdApp[*]令物件變數wrdApp = 建立的Word應用程式物件[*]令物件變數wrdDoc = 指定的Word文件檔案[*]引用該Word文件的第一個表格[*]對該表格的每一列做迴圈, 變數 r 為列號[*]對每一列的每一欄做迴圈, 變數 c 為欄號[*]令目前工作表的第 r 列第 c 欄儲存格值
= 該Word表格的對應儲存格[*]繼續迴圈中的下一欄, 直到最後一欄[*]繼續迴圈中的下一列, 直到最後一列[*]結束該Word表格的引用[*]關閉該Word文件檔[*]結束Word應用程式[*]釋放物件變數wrdDoc[*]釋放物件變數wrdApp[/list]PS.這個程式要在Excel空白工作表中執行。

hotpop60 2002-11-15 10:54 AM

大大謝謝囉~~
受益無窮~~

對囉~~
我同事的電腦在執行mail merge的時候會出現無法建立DDE的訊息~~
後來我有去看microsoft的文件~~
都沒辦法解決~~
我個人認為是os的問題~~
不知道大大是否有遇過這種問題~~

leonchou 2002-11-16 04:30 PM

我沒遇過咧? 拍寫~ ^^

嗯~ 回應是發表的一種動力..
尤其是教學文章~
如果大家能多回應一點,
PCZONE的教學文章就不會越來越少了...


所有時間均為 +8。現在的時間是 02:25 PM



 XML   RSS 2.0   RSS 
本站使用 vBulletin 合法版權程式
站務信箱 : [email protected]

本論壇所有文章僅代表留言者個人意見,並不代表本站之立場,討論區以「即時留言」方式運作,故無法完全監察所有即時留言,若您發現文章可能有異議,請 email :[email protected] 處理。