簡體   English   中英

單詞2013年VBA /宏崩潰

[英]word 2013 VBA / Macro crashes

在啟用了注釋部分的文檔上運行VBA /宏時,Word 2013崩潰。 宏搜索一個字符並用注釋部分和主文檔中的“”(空白)替換它。 這是使用Selection.Find.Execute API完成的。 當沒有評論部分或沒有選擇標記時,Word不會崩潰。

這是在Windows 10和word 2013.該宏在Word 2007和Windows 7中運行良好。

可重復的步驟:

  1. 使用一個文本創建一個簡單文檔並添加注釋。

  2. 插入示例注釋文本如下:(垂直添加如下:A:&(輸入)等)

     A: & B: & C: & D: & E: & F: & G: & H: & I: & J: & K: & L: & M: & N: & 
  3. 創建宏:

     Sub Test_Macro() ActiveWindow.View.SplitSpecial = wdPaneComments With Selection.Find .Text = "&" .Replacement.Text = "" .Forward = True .Wrap = wdFindStop .Format = False .MatchCase = False .MatchWholeWord = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.HomeKey unit:=wdStory If Selection.Find.Execute = True Then 'We found the slash. Delete it. Selection.TypeBackspace End If End Sub 
  4. 執行宏( &將被清除)。 繼續執行; Word將在10次中崩潰2-3次。(相應地更新注釋文本,當清除所有& s時)。

我沒有在您的文本中看到問題,因此我無法回答,但我可以確認Microsoft Word 2013在ActiveDocument.Content.Find.Execute崩潰。 我通常不得不通過在執行宏之前手動執行“替換”對話框來解決此問題。 這幾乎每次都有效。 現在我發現這篇帖子說它與使用空的撤銷記錄運行的Execute有關。 我能夠通過插入一行代碼來解決這個問題,該代碼行在創建撤銷記錄后立即將一些文本添加到文檔的最后一段。

暫無
暫無

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

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