Board logo

標題: word表格貼到excel中 [打印本頁]

作者: ciboybj    時間: 2014-7-27 14:30     標題: word表格貼到excel中

大家好
我想問一下如何在word 環境下
開啟excel 然後將word的表格貼到excel的sheet1中的c5中
然後再將d5、e5中的內容貼回word中

在麻煩大家了

謝謝大家~
作者: ciboybj    時間: 2014-7-29 12:20

大家好
我找到之前版主回覆的資料
http://forum.twbts.com/thread-4838-1-1.html
但是直接利用上述的程式,會出現一些問題
由於我的excel表中是利用函數的方式,將word所貼進去的資料進行查找
而,直接利用上述程式,會出現貼入的字串無法利用excel中的函數進行查找的問題(詳細的原因,我也不清楚

因此,以下我針對上述問題進行改良後的程式(在word2003、2010及excel2003、2010皆測試可用
  1. Sub test()
  2. [code]Sub test()
  3. Dim xlWkApp As Object, xlWk As Object
  4. Dim b, i, q As Integer
  5. Dim strSrcName As String
  6. i = 1
  7. Set xlWkApp = CreateObject("excel.application") '應用excel
  8. With xlWkApp
  9. .Visible = False '讓excel的執行不可見
  10. Set xlWk = .Workbooks.Open("excel範本的置放路徑") '開啟excel範本
  11. While i <= ActiveDocument.Tables(1).Rows.Count '設定i的循環為word中的第一個表格的總列數
  12. b = ThisDocument.Tables(1).Cell(i, 1) '擷取word中的table1中的cell(i,1)
  13. b = Left(b, Len(b) - 2) '選取word表格中的字串
  14. xlWk.Sheets("sheet名稱").Range("c" & i + 4) = b '將word表格中的字串,貼到excel中的c欄中
  15. ThisDocument.Tables(1).Cell(i, 2).Range.Text = xlWk.Sheets("sheet名稱").Range("d" & i + 4) '將excel的d欄中的值貼回word中的第二欄
  16. ThisDocument.Tables(1).Cell(i, 3).Range.Text = xlWk.Sheets("sheet名稱").Range("e" & i + 4) '將excel的e欄中的值貼回word中的第三欄
  17. i = i + 1
  18. Wend
  19. End With
  20. End Sub
複製代碼





歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)