gpt4 book ai didi

vba - 在HTML中保存副本时如何保持原始word文档打开?

转载 作者:行者123 更新时间:2023-12-02 01:12:41 24 4
gpt4 key购买 nike

我遇到的问题是,当我运行宏将当前 Word 文档保存为 HTML 类型时,文档仍然保持打开状态,但不是原始 .docx 格式,而是 .htm 格式。

如果我在运行宏后编辑文档,它以后就不会保留原来的 .docx 格式。

我很感激有关如何在保存具有不同格式的副本时保持原始格式的反馈。谢谢。

这是我在 VBA 中的 docx 到 html 代码

Sub DocToHTML()

Dim slice As String
Dim strDocName As String
Dim PathOrg As String

On Error Resume Next

strDocName = ActiveDocument.Name
slice = Left(strDocName, InStrRev(strDocName, ".") - 1)
strDocName = ActiveDocument.Path + "\" + slice
ActiveDocument.SaveAs2 FileName:=strDocName, FileFormat:=wdFormatHTML

End Sub

最佳答案

在你编写代码来做这样的事情之前,停下来想想你将如何在没有代码的 UI 中做到这一点。您编写的任何代码都会使该过程自动化。

那么你会在 UI 中做什么呢?

  • 保存原始文档以保留您所做的任何更改。
  • 将副本另存为 html。
  • 重新打开原始文档。
  • 可能关闭html版本。

  • 所以你的代码可以改写如下:
    Sub DocToHTML()

    Dim origName As String
    Dim saveName As String
    Dim docHTML As Document

    If Not ActiveDocument.Saved Then ActiveDocument.Save
    origName = ActiveDocument.FullName
    saveName = Left(origName, InStrRev(origName, ".") - 1)
    ActiveDocument.SaveAs2 FileName:=saveName, FileFormat:=wdFormatHTML

    Set docHTML = ActiveDocument
    Documents.Open origName
    docHTML.Close wdDoNotSaveChanges

    End Sub

    关于vba - 在HTML中保存副本时如何保持原始word文档打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44375922/

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