VBA 在导出到 Word 时保留指向 Exel 表的链接

问题描述 投票:0回答:1

我使用以下代码将范围从 Excel 复制到 Word。该范围包含具有所有格式和行间距(更具体的是行高)的确切内容。为了保持行高,我使用下面的代码。但是,当我使用下面的代码粘贴它时,它还会保留指向 Excel 表格的链接,当双击 Word 时,它会在 Word 中打开 Excel 编辑器。

我想要做的是保留内容格式(如在 Excel 中)并将其导出到 Word,而不链接到 Excel 表格。如果我不使用“DataType:=wdPasteOLEObject”Word 会选择自己的行高。

Sub ExportRangeToWord()
    Set obj = CreateObject("Word.Application")
    obj.Visible = True
    Set newObj = obj.Documents.Add
    Sheets("FinalContent").Activate
    Sheets("FinalContent").UsedRange.Copy
    newObj.Range.PasteSpecial Link:=False, DataType:=wdPasteOLEObject, Placement:=wdInLine, DisplayAsIcon:=False
    Application.CutCopyMode = False
    obj.Activate
    Sheets("MainSheet").Activate
End Sub

知道如何删除链接,尽管它说“Link:=False”。

excel vba ms-word
1个回答
1
投票

例如:

Sub ExportRangeToWord()
Dim wdApp As New Word.Application, WdDoc As Word.Document
With wdApp
  .Visible = True
  Set WdDoc = .Documents.Add
  Sheets("FinalContent").UsedRange.Copy
  WdDoc.Range.PasteAndFormat Type:=wdFormatOriginalFormatting
  ' or:
  'WdDoc.Range.PasteExcelTable LinkToExcel:=False, WordFormatting:=False, RTF:=False
  WdDoc.Activate
  Application.CutCopyMode = False
End Sub

请注意,代码包含两种可能的粘贴数据的方法。

© www.soinside.com 2019 - 2024. All rights reserved.