繁体   English   中英

将整个故事从Word复制并粘贴到Excel

[英]Copy and paste Whole Story from Word to Excel

我有一个定期接收的Word文档,该文档需要与Excel中已有的其他数据合并,以作为较大输出的一部分。 我可以将整个文档(WholeStory)从Word复制并粘贴到Excel中,但是我想将其作为整个Excel输出宏的一部分。 我当前在这部分的代码如下,除了不粘贴任何内容外,它工作正常。 当到达那里时,没有数据可粘贴,因此我想它要么不是从一开始就拾取它,要么是不携带它。 在寻求协助。 非常感谢!

Sub ImportSectHWord()

Dim objWord As Object
Dim objDoc As Object
Dim wdFileName

Set objWord = CreateObject("word.Application")
wdFileName = Application.GetOpenFilename("Word Documents, *.doc*")

If wdFileName = False Then Exit Sub

Set objDoc = GetObject(wdFileName)

objWord.Documents.Open (wdFileName)
objWord.Selection.WholeStory
Selection.Copy

Worksheets("H Import").Select
Range("A1").Select
ActiveSheet.Paste

objDoc.Close SaveChanges:=wdDoNotSaveChanges
objWord.Quit

End Sub

该声明

Selection.Copy

正在复制Excel中当前选择的内容。

要在Word中复制Selection对象,请使用

objWord.Selection.Copy

始终建议在使用方法和属性时限定要引用的对象,即使VBA提供默认对象也是如此。

Sub ImportSectHWord()
    'It is better to always define constants, even though they will default to zero
    ' which just happens to be the desired value in this case
    Const wdDoNotSaveChanges As Long = 0

    Dim objWord As Object
    Dim objDoc As Object
    Dim wdFileName

    Set objWord = CreateObject("word.Application")
    wdFileName = Application.GetOpenFilename("Word Documents, *.doc*")

    If wdFileName = False Then Exit Sub

    Set objDoc = GetObject(wdFileName)

    objWord.Documents.Open (wdFileName)
    objWord.Selection.WholeStory
    objWord.Selection.Copy

    ActiveWorkbook.Worksheets("H Import").Select
    ActiveWorkbook.Worksheets("H Import").Range("A1").Select
    ActiveWorkbook.ActiveSheet.Paste

    objDoc.Close SaveChanges:=wdDoNotSaveChanges
    objWord.Quit

End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM