簡體   English   中英

在交叉引用域代碼中插入/修改文本

[英]Inserting/modifying text within cross reference field codes

我在 Word 中構建了一個自定義交叉引用工具,允許用戶同時選擇多個連續項目進行交叉引用。 例如,按住 Shift 按鈕並選擇圖 1 到圖 5 當前會在我的文檔中插入“圖 1 - 5”,這兩個數字都作為可更新的域代碼與各自的數字相關聯。 域代碼切換如下所示:

{ REF _Ref2236712 \h \* \Charformat } - { REF _Ref2236713 \h \# 0}

該字段通過 VBA 插入到文檔中。 下面是如何插入第一個字段的示例:

Selection.InsertCrossReference ReferenceType:=ReferenceType.Value, _
referencekind:=wdOnlyLabelAndNumber, referenceitem:=i, insertashyperlink:=HyperlinkChoice

...

Set fld1 = rng1.Fields(1)
fld1.Code.Text = fld1.Code.Text & "\* Charformat "
fld1.Update

如何修改域代碼 VBA,使文檔中的最終結果顯示為“圖 1 - 5”而不是“圖 1 - 5”? 我嘗試在方括號內的不同位置添加像“s”和“s”這樣的字符串,但沒有成功。

更進一步,是否可以將“附錄 A - 附錄 C”更改為“附錄 A - C”? 這是一個更大的挑戰,因為它不涉及簡單地添加一個字母來實現復數。 此外,之前的數字格式轉換 (\\# 0) 不適用於字母字符(意味着附錄 C 不會被縮減為僅說 C)。

您需要修改宏,使其輸出: Figures { REF _Ref2236712 \\h # 0} - { REF _Ref2236713 \\h # 0}

暫無
暫無

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

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