簡體   English   中英

MS Word VBA:將 Word Doc 保存為每頁的前 2 個單詞

[英]MS Word VBA: Saving a Word Doc as the First 2 Words on Every Page

我使用來自 excel 的郵件合並將 400 頁標簽拉入 1 個 word 文檔。 每個頁面在 2x3 格式中具有相同的 label 6 次,每個頁面都是唯一的。 我目前有一個 VBA 代碼來拆分每個頁面並以所需的正確邊距保存它。 然后它將文檔保存為文檔名稱+它的頁碼。

但是,我希望每個 label 的文檔名稱作為它所在頁面的前 2 個單詞。

例如,如果 label 如下所示,我希望將文檔另存為“Chipole Burrito.docx”

墨西哥卷餅

  • 牛排(雙份)
  • 白米

下面是我用來保存帶有頁碼的文檔的代碼。

docSingle.Range.Find.Execute Findtext:="^m", ReplaceWith:=""

strNewFileName = Replace(docMultiple.FullName, ".doc", "_" & Right$("000" & iCurrentPage, 4) & ".doc")

docSingle.SaveAs strNewFileName

這應該讓您獲得第一個單詞,基本上訪問單詞 object 並返回第一個和第二個項目:

Private Sub GetFirstTwoWords()
    With ActiveDocument
        Debug.Print Trim$(.Range(.Words(1).Start, .Words(2).End).Text)
    End With
End Sub

或者,如果 label 的字數多於/少於 2 個,您可以獲得第一段文字:

Private Sub GetFirstParagraphText()
    With ActiveDocument
        Debug.Print Trim$(.Paragraphs(1).Range.Text)
    End With
End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM