- 帖子
- 13
- 主題
- 3
- 精華
- 0
- 積分
- 16
- 點名
- 0
- 作業系統
- WINXP
- 軟體版本
- OFFICE2003
- 閱讀權限
- 10
- 性別
- 男
- 註冊時間
- 2010-8-9
- 最後登錄
- 2024-9-1
|
[發問] 關於利用vba將excel資料傳入word
各位好:我因為有需要,上網查了此功能
但當初寫的只有二筆資料key(1)' key(2)
而我的需要可能超過10筆資料需要透過vba將excel資料傳入word,不知要如何更改
請前輩能夠協助說明
Private Sub CommandButton2_Click()
Application.ScreenUpdating = False '關閉屏幕刷新
On Error Resume Next '捕捉錯誤
Dim oSt As Range, wdDoc As Word.Document, wdRange As Word.Range
myPath = ThisWorkbook.Path & "\2.doc" '定義word文件路徑,名字自己修改,我設定為2.doc
Set wdDoc = GetObject(myPath) '打開word
Dim key(2) '定義一下數組,
key(1) = "Applicant :" '要替換的數据
key(2) = "Assignment No :"
Set wdRange = wdDoc.Content '將word的文檔內容賦予wdrange
For i = 1 To 2 '循環
With wdRange.Find
.Text = key(i) '查找
.Replacement.Text = key(i) + IIf(i = 1, Cells(1, 2).Value, Cells(2, 2).Value) '替換
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
wdRange.Find.Execute Replace:=wdReplaceAll '全部替換?
Next
wdDoc.Save '保存word
wdDoc.Close '關閉word
Set wdDoc = Nothing
Application.ScreenUpdating = True '開啟屏幕刷新
End Sub |
|