如何在不丢失行高的情况下将 Excel table 粘贴到 word 中
How do I Paste an Excel table into word without losing the row heights
我正在通过以下方式将 Excel 的范围复制到 Word 中:
Set oRng = ActiveSheet.Range("B2:V27")
oRng.Copy
objDoc.ActiveWindow.Selection.PasteSpecial , , 0
除了更改行高外,此方法有效。
手动执行,行高可以像 Microsoft Excel Worksheet Object
我的问题是:
这可以用代码完成吗?
这对我有用
Option Explicit
Const wdPasteOLEObject As Integer = 0
Const wdInLine As Integer = 0
Sub Sample()
Dim oWordApp As Object, oWordDoc As Object
On Error Resume Next
Set oWordApp = GetObject(, "Word.Application")
If Err.Number <> 0 Then
Set oWordApp = CreateObject("Word.Application")
End If
Err.Clear
On Error GoTo 0
oWordApp.Visible = True
Set oWordDoc = oWordApp.Documents.Add
'~~> Sample range copied
Sheet1.Range("A1:D10").Copy
oWordDoc.ActiveWindow.Selection.PasteSpecial Link:=False, _
DataType:=wdPasteOLEObject, _
Placement:=wdInLine, _
DisplayAsIcon:=False
End Sub
我正在通过以下方式将 Excel 的范围复制到 Word 中:
Set oRng = ActiveSheet.Range("B2:V27")
oRng.Copy
objDoc.ActiveWindow.Selection.PasteSpecial , , 0
除了更改行高外,此方法有效。
手动执行,行高可以像 Microsoft Excel Worksheet Object
我的问题是: 这可以用代码完成吗?
这对我有用
Option Explicit
Const wdPasteOLEObject As Integer = 0
Const wdInLine As Integer = 0
Sub Sample()
Dim oWordApp As Object, oWordDoc As Object
On Error Resume Next
Set oWordApp = GetObject(, "Word.Application")
If Err.Number <> 0 Then
Set oWordApp = CreateObject("Word.Application")
End If
Err.Clear
On Error GoTo 0
oWordApp.Visible = True
Set oWordDoc = oWordApp.Documents.Add
'~~> Sample range copied
Sheet1.Range("A1:D10").Copy
oWordDoc.ActiveWindow.Selection.PasteSpecial Link:=False, _
DataType:=wdPasteOLEObject, _
Placement:=wdInLine, _
DisplayAsIcon:=False
End Sub