gpt4 book ai didi

vba - 如何使用VBA将Excel中的数据以文本形式导出到Word

转载 作者:行者123 更新时间:2023-12-02 19:21:20 25 4
gpt4 key购买 nike

我从这个网站找到了以下代码。它几乎可以工作,除了它将日期导出到 Word 文档中的表单中。相反,我想要段落,保留 Excel 中的原始字体、大小和颜色。有人可以帮忙吗?非常感谢!

Sub Export_Excel_To_Word()

Dim wdApp As Object
Dim wd As Object

On Error Resume Next
Set wdApp = GetObject(, "Word.Application")
If Err.Number <> 0 Then
Set wdApp = CreateObject("Word.Application")
End If
On Error GoTo 0

Set wd = wdApp.Documents.Add

wdApp.Visible = True



Sheets("sheet1").Activate
Set Rng = ThisWorkbook.ActiveSheet.Range("A2:F21")

Rng.Copy

With wd.Range
.Collapse Direction:=wdCollapseStart 'Slutet av dokumentet
.InsertParagraphAfter 'Lagg till rad
.Collapse Direction:=wdCollapseStart 'Slutet av dokumentet
.PasteSpecial xlPasteFormats, False, False 'Paste with format

End With

End Sub

最佳答案

这非常简单,您正在使用带有错误位置的参数的pasteSpecial 方法。这让我一开始就犯了错误。尝试粘贴纯无格式文本:

.PasteSpecial DataType:=2 ' wdPasteDataType.wdPasteText

或者保留字体的格式,

.PasteSpecial DataType:=1 ' wdPasteDataType.wdPasteRtf

粘贴后用单个空格替换制表符:

With wd.Range
.Collapse Direction:=wdCollapseStart
.InsertParagraphAfter
.Collapse Direction:=wdCollapseStart
.PasteSpecial DataType:=2
With .Find
.ClearFormatting
.Text = vbTab
.Replacement.ClearFormatting
.Replacement.Text = " "
.Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinue
End With
End With

关于vba - 如何使用VBA将Excel中的数据以文本形式导出到Word,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42793557/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com