将多个字段中的特定Excel数据导出到Word中



让我说我对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。

如果我理解你的问题,我认为你只需要替换:

ThisWorkbook.Worksheets("sheet1").Range("").Copy  

发件人:

Selection.Copy

您似乎需要使用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

相关内容

  • 没有找到相关文章

最新更新