Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 创建一个按钮,将整个电子表格复制到新的word文档中_Excel_Copy_Excel 2010_Vba - Fatal编程技术网

Excel 创建一个按钮,将整个电子表格复制到新的word文档中

Excel 创建一个按钮,将整个电子表格复制到新的word文档中,excel,copy,excel-2010,vba,Excel,Copy,Excel 2010,Vba,您好,我想在excel 2010文档中编程一个按钮,它将复制整个工作表并自动打开并粘贴到word文档中 我一直在看帮助页面,有一些类似的函数,但它们太具体了,我无法让代码正常工作 这是我使用的代码 我举的例子是说明一个范围,我可以这样做,或者只是将整个工作表(称为“outputCMCR”)复制到一个新的word文档中。 当我运行这段代码时,我得到一个编译错误,没有定义用户定义的类型 Sub button2_click() Dim objWord As New Word.Applic

您好,我想在excel 2010文档中编程一个按钮,它将复制整个工作表并自动打开并粘贴到word文档中

我一直在看帮助页面,有一些类似的函数,但它们太具体了,我无法让代码正常工作

这是我使用的代码 我举的例子是说明一个范围,我可以这样做,或者只是将整个工作表(称为“outputCMCR”)复制到一个新的word文档中。 当我运行这段代码时,我得到一个编译错误,没有定义用户定义的类型

Sub button2_click()  

    Dim objWord As New Word.Application  
    'Copy the range Which you want to paste in a New Word Document  
    Range("A1:B10").Copy  

    With objWord  
        .Documents.Add  
        .Selection.Paste  
        .Visible = True  
    End With  

End Sub 

谢谢,非常感谢您的帮助。

好的,我想这里有两个问题

1-您是否引用了Microsoft Word 14.0对象库?要执行此操作,请单击
Tools->References
(在VBA编辑器中)。向下滚动列表,直到看到
Microsoft Word 12.0对象库
Microsoft Word 14.0对象库
(取决于计算机上安装的Office版本),然后选择它。用于早、晚装订

2-您需要创建如下代码所示的对象

Private Sub CommandButton1_Click()
    Dim objWord As Word.Application
    Range("A1:B10").Copy

    Set objWord = CreateObject("Word.Application.14")
    With objWord
        .Documents.Add
        .Visible = True
        .Selection.Paste
    End With
End Sub

我尝试将您添加到代码中,但仍然得到相同的错误。你在第一期中提到word 14对象库是什么意思。我肯定没有,因为我不知道你的意思。@ShawnLasich-我已经更新了答案。希望这能解决错误。你修改后的答案解决了我的问题,非常感谢你的帮助!!