|
如何通过excelVBA将该电子表格中的A1:A4区域内的文字导出word中,创建新文档,并命名为“文章.docx”,然后保存到同文件夹下?
还要求:每两个段落之间空两格。
程序如下:
Sub ExcelToWord() ' '导出成 “.docx”文件
Dim wenben As String
Dim wdapp As Object '声明一个对象变量,这里即将声明为Word对象
Set wdapp = CreateObject("Word.Application") '用set来创建Word对象,这里是运行Word程序,但未新建文档
wdapp.Visible = 1 '后台运行Word对象,如果为1或者True则可以看到word运行界面
' wdapp.Documents.Add DocumentType:=wdNewBlankDocument '新建一word文档
Excel.Application.Sheets("bell").Activate '切换当前电子表格的表bell为当前激活表
hmax = Range("A65535").End(xlUp).Row
For i = 1 To hmax
wenben = Range("A" & i).Value
wdapp.Application.Activate '将Word激活为当前窗口
Selection.EndKey Unit:=wdStory '将光标置于文档页面的最后处
Selection.TypeParagraph '向下空一行
Selection.TypeParagraph '再向下空一行
Selection.TypeText Text:=wenben
Excel.Application.Sheets("bell").Activate
Next i
wdapp.ActiveDocument.SaveAs ThisWorkbook.Path & "\文章.docx" '调用saveas命令保存文档,根据实际,指定文档的保存路径和名称
wdapp.Application.Quit '退出并关闭程序文档
Set wdapp = Nothing '释放对象
MsgBox "数据已经抓取成功,存放在同文件夹的“文章.docx”"
End Sub
--------------------------------------------------------------------------
现在这个程序无法运行达到预期目的,不知问题出在哪里?请哪位大侠能不吝赐教!
|
|
|