word 插入題注后標簽與編號間有一個空格怀各,編號與標題之間沒有空格倔韭!這顯然不符合中文習(xí)慣。中文習(xí)慣應(yīng)該是題注的標簽與編號間沒有空格瓢对,編號與標題之間有空格寿酌。可通過插入一段VBA宏代碼解決這個問題硕蛹。步驟如下面3個圖所示醇疼。
復(fù)制以下命令后添加至宏代碼(word需要啟用宏功能)
Sub InsertCaption()
'功能:自動刪除標簽與編號間的空格,并在題注數(shù)字后添加一個空格秧荆,即將“圖_1”變?yōu)椤皥D1_”倔毙,“_”表示空格。
'僅用于“圖”乙濒,其他標簽需要修改代碼陕赃;宏代碼在Word 2019上通過測試。
'真正從原理上協(xié)同系統(tǒng)插入題注颁股,無任何前提條件么库;用戶照常插入題注即可,甚至感覺不到程序的存在甘有!
'LiangNN 2022年12月11日 參考網(wǎng)絡(luò)代碼廊散,簡化修改
Dim startPt As Long, endPt As Long
startPt = Selection.Start 'startPt標注起始點
'插入“題注”對話框出來后,選擇“圖”標簽梧疲,按“確定”結(jié)束則會執(zhí)行以下程序。不要在對話框里輸入標題运准!否則程序出錯
If Dialogs(wdDialogInsertCaption).Show = -1 And Dialogs(357).Label = "圖" Then '數(shù)字357同樣表示wdDialogInsertCaption對話框
endPt = Selection.Start 'endPt標記插入的題注部分終點
Selection.Start = startPt '選定插入的整個題注
'刪除標簽與編號間的空格
With Selection.Find
.Text = "圖 "
.Forward = True 'False=向上查找,(True=向下查找)
.MatchWildcards = False '不使用通配符
.Replacement.Text = "圖"
.Execute Replace:=wdReplaceOne '替換找到的第一個幌氮,此處用作刪除空格
endPt = endPt - 1 '刪除空格后,末位減1
Selection.Start = endPt '取消選中胁澳,將鼠標移動到編號后面
Selection.End = endPt
Selection.TypeText Text:=" " '編號后添加一個空格
End With
End If
End Sub
參考網(wǎng)頁:[轉(zhuǎn)載][Word]插入題注時自動刪除標簽與編號前的空格该互,編號后添加空格 - 知乎 (zhihu.com)