分享

利用VBA将Excel表格粘贴到Word中

 gblhp 2015-02-14


转载请保留链接:http://www./cat4/325.html,VBA交流群273624828。

之前我们都是将Excel中的内容输入到Word中,今天来看一个将Excel表格直接转为word表格的例子。利用的就是复制粘贴,主要学习一下怎样利用VBA粘贴Excel表格到Word。

Sub Macro1() '引用Microsoft Word 1x.0 Objects Library
Dim rng As Range
Dim MyWord As New Word.Application
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set rng = [a1].CurrentRegion
With MyWord
.Visible = True
.Documents.Add
rng.Copy       '复制
.Selection.PasteExcelTable False, False, False  '粘贴为表格
.Selection.WholeStory
.Selection.Font.Size = 12
With .Options
.DefaultBorderLineStyle = wdLineStyleSingle
.DefaultBorderLineWidth = wdLineWidth050pt
.DefaultBorderColor = wdColorAutomatic
End With
.Selection.Tables(1).PreferredWidthType = 3
.Selection.Tables(1).PreferredWidth = .CentimetersToPoints(15)
.ActiveDocument.SaveAs Filename:=ThisWorkbook.Path & "\" & Split(Workbooks(1).Name, ".")(0) & ".doc"
.ActiveDocument.Close
.Quit
End With
Set MyWord = Nothing
Application.CutCopyMode = False
Application.DisplayAlerts = True
Application.ScreenUpdating = True
MsgBox "ok"
End Sub

之前我们都是用CreateObject("word.application")来创建一个Word对象,这次我们直接引用了Word组件,也就不必用 CreateObject("word.application")了,引用之后该对象的一些方法和属性就可以直接使用了。粘贴为表格的方法是PasteExcelTable。剩下的就和前面的差不多了,一些定义格式的代码直接在Word中录制个宏就可以了,代码结合英文意思或者百度一下就知道是设的哪些格式了,这里不再多说。

本节示例文件下载地址:http://pan.baidu.com/s/1kTifLmn

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多