【教學】Excel VBA - 從Word表格取回資料 - PCZONE 討論區

返回   PCZONE 討論區 > ▲ -- 電 腦 軟 體 討 論 區 > -- OFFICE 相 關 軟 體 討 論 版


PCZONE 討論區



通知

-- OFFICE 相 關 軟 體 討 論 版 Word、Excel、PowerPoint、Access、Outlook、FrontPage或Office XP等的問題解答與經驗分享

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

Sub 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 'close the document
12 wrdApp.Quit 'close Word
13 Set wrdDoc = Nothing
14 Set wrdApp = Nothing
End Sub

逐行說明
  1. 宣告一個物件變數wrdApp
  2. 令物件變數wrdApp = 建立的Word應用程式物件
  3. 令物件變數wrdDoc = 指定的Word文件檔案
  4. 引用該Word文件的第一個表格
  5. 對該表格的每一列做迴圈, 變數 r 為列號
  6. 對每一列的每一欄做迴圈, 變數 c 為欄號
  7. 令目前工作表的第 r 列第 c 欄儲存格值
    = 該Word表格的對應儲存格
  8. 繼續迴圈中的下一欄, 直到最後一欄
  9. 繼續迴圈中的下一列, 直到最後一列
  10. 結束該Word表格的引用
  11. 關閉該Word文件檔
  12. 結束Word應用程式
  13. 釋放物件變數wrdDoc
  14. 釋放物件變數wrdApp
PS.這個程式要在Excel空白工作表中執行。

回覆
會員

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

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

我沒遇過咧? 拍寫~ ^^

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

回覆


類似的主題
主題 主題作者 討論版 回覆 最後發表
在EXCEL中如何判斷顏色取值?(VBA) TPBUNNY -- OFFICE 相 關 軟 體 討 論 版 7 2003-08-12 07:16 PM
【教學】Excel - 玩玩亂數 leonchou -- OFFICE 相 關 軟 體 討 論 版 2 2003-06-28 10:10 PM
[VBA]月曆控制項亂碼問題 leonchou -- OFFICE 相 關 軟 體 討 論 版 1 2003-04-27 03:50 PM
[VBA] 比對資料及設定格式 leonchou -- OFFICE 相 關 軟 體 討 論 版 1 2001-09-09 12:02 AM
[VBA] 自動巨集與活頁薄事件 leonchou -- OFFICE 相 關 軟 體 討 論 版 1 2001-08-22 08:32 PM






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

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