1
我想寫當用戶點擊保存,顯示彈出一個宏(我把它作爲子的FileSave())如果文檔中包含的任何突出。到目前爲止,所有消息框都能很好地工作。不幸的是,我無法弄清if語句使用哪些條件來檢查文檔是否包含突出顯示。Word宏以確定文件是否含有突出
誰能幫我用VBA的這幾行?
我想寫當用戶點擊保存,顯示彈出一個宏(我把它作爲子的FileSave())如果文檔中包含的任何突出。到目前爲止,所有消息框都能很好地工作。不幸的是,我無法弄清if語句使用哪些條件來檢查文檔是否包含突出顯示。Word宏以確定文件是否含有突出
誰能幫我用VBA的這幾行?
您只需通過這種方式文檔內容中搜索突出顯示的文本:
Sub SearchAnyHighlight()
Dim hiliRng As Range
Set hiliRng = ActiveDocument.Content
With hiliRng.Find
.Highlight = True
.Execute
End With
If hiliRng.Find.Found Then
'to inform that something was found
MsgBox "You can't close Active Document"
'to remove all highlighted area <-- added after edition
With hiliRng.Find
.Replacement.Highlight = False
.Execute "", Replace:=wdReplaceAll, Forward:=True, _
ReplaceWith:="", Format:=True
End With
End If
End Sub
謝謝!太棒了。 – user2259920 2013-04-09 16:02:02
快速提問 - 所以如果我想刪除所有高光,使用.Forward = True的代碼會刪除除第一個之外的所有其他亮點。我認爲這是因爲在查找中選擇了第一個高光。我怎樣才能確保它恢復並刪除那個呢? – user2259920 2013-04-09 16:02:44
@ user2259920,請參閱答案中的擴展代碼...它刪除所有亮點,包括第一個亮點。如果你仍然很開心,請記住將問題標記爲已解決... – 2013-04-09 16:26:30