讓我先說我對 VBA 很陌生,因此感謝您的幫助。有人聯系我,想看看我是否可以創建基本級別的自動化。需要通過按鈕將資料從 Excel 匯出到 Word。
最終目標是在 excel 中包含資料欄位,例如“名字”“姓氏”“地址”“聯系電話”。然后選擇一個人的整行(B1、B2、B3、B4),當按下宏按鈕時,它會打開一個 Word 檔案并將欄位預填充到檔案中。這是為了發送預填充信件,此人還表示郵件合并不能滿足他們的需求。以下是我正在使用的內容。
Sub ExcelToWord()
Dim wordApp As Word.Application
Dim mydoc As Word.Document
Set wordApp = New Word.Application
wordApp.Visible = True
Set mydoc = wordApp.Documents.Add()
ThisWorkbook.Worksheets("sheet1").Range("").Copy
mydoc.Paragraphs(1).Range.PasteExcelTable _
LinkedToExcel:=False, _
WordFormatting:=False, _
RTF:=False
mydoc.SaveAs2 "MyDoc"
End Sub
這允許特定范圍,例如 (A2,B3) 但不是“選定”區域。如果這是非常基本的,我深表歉意,但正如我所說,我并沒有真正使用 VBA。
uj5u.com熱心網友回復:
如果我理解你的問題,我認為你只需要替換:
ThisWorkbook.Worksheets("sheet1").Range("").Copy
經過:
Selection.Copy
uj5u.com熱心網友回復:
您似乎需要使用Application.Selection屬性,該屬性回傳當前在活動作業表上為 Application 物件選擇的物件。
Sub ExcelToWord()
Dim wordApp As Word.Application
Dim mydoc As Word.Document
Set wordApp = New Word.Application
wordApp.Visible = True
Set mydoc = wordApp.Documents.Add()
ThisWorkbook.Worksheets("sheet1").Activate()
Application.Selection.Copy()
mydoc.Paragraphs(1).Range.PasteExcelTable _
LinkedToExcel:=False, _
WordFormatting:=False, _
RTF:=False
mydoc.SaveAs2 "MyDoc"
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/388347.html
上一篇:訪問資料庫中的空單元格時如何填充
