位置:首頁(yè) > 軟件操作教程 > 辦公軟件 > Word > 問題詳情

學(xué)習(xí)教程:如何符號(hào)替換?

提問人:周麗平發(fā)布時(shí)間:2021-06-21

符號(hào)替換

寫作的時(shí)候經(jīng)常會(huì)出現(xiàn)這種情況:寫作初期有些名稱沒有定下來,后期很可能要改。比如你文章中提出了一個(gè)算法,但是算法名字還沒想好,文章中到處需要引用這個(gè)名字。與運(yùn)算是用 & 還是 &&?更是有的時(shí)候遇到?jīng)]節(jié)操的甲方,改來改去,改來改去,改來改去,改來改去,改來改去,改來改去……

LaTeX 解決這種問題的思路很簡(jiǎn)單,定義一個(gè)命令就好了,文章繼續(xù)往下寫,以后要改的話重新定義命令就好了。

\newcommand{\myalg}{NIMLE}

\newcommand{\AND}{\&{}}

...

This paper proposed a novel algorithm named \myalg. ...

0xFF \AND 0xEF ...

Word 也可以實(shí)現(xiàn)類似的功能。這里介紹一種利用域來實(shí)現(xiàn)這種符號(hào)定義的方法。

Word 中有各種各樣的域,其中一種域叫做 DOCVARIABLE,語法格式為:

{ DOCVARIABLE sym }

域 DOCVARIABLE 的作用就是把變量 sym 顯示出來。舉個(gè)建國(guó):ICS = “工業(yè)控制系統(tǒng)”,那么域 DOCVARIABLE 會(huì)將所有的 { DOCVARIABLE ICS } 替換成 ”工業(yè)控制系統(tǒng)“。

所以在 Word 中實(shí)現(xiàn) LaTeX 中的宏替換功能需要以下幾步:

1、在變量集合 Variables 中添加 ICS,并給其賦值;

2、按 Ctrl +F9 插入域,手動(dòng)輸入 DOCVARIABLE ICS。

相當(dāng)?shù)臎]有效率,被 LaTeX 甩幾條街有木有。但是不用擔(dān)心,Word 自有它的過人之處:VBA。下面介紹一種方法來簡(jiǎn)化這個(gè)過程。

點(diǎn)擊菜單中的宏,如下圖所示,宏名隨便填,然后點(diǎn)擊創(chuàng)建,如下圖所示。

image.png

刪除代碼框中的所有代碼,然后將下列代碼復(fù)制進(jìn)去。

Sub UpdateVariable()

' Clear variables

For Each Var In ActiveDocument.Variables

Var.Delete

Next

' Set the file path

Dim MyFile As Object

Set MyFile = CreateObject("Scripting.FileSystemObject")

Dim FilePath As String

FilePath = ActiveDocument.Path & "\Symbols.xlsx"

' If can't find the file, show error message and exit sub

If Not MyFile.FileExists(FilePath) = True Then

MsgBox "Can't find file: Symbols.xlsx", Title:="Error"

Exit Sub

End If

' Read the excel file "Symbols.xlsx"

Dim ExcelObject As Object

Set ExcelObject = GetObject(FilePath)

Set Table = ExcelObject.Sheets(1).UsedRange()

For i = 1 To Table.Rows.Count

V1 = Table.Cells(i, 1).Text

V2 = Table.Cells(i, 2).Text

ActiveDocument.Variables.Add Name:=V1, Value:=V2

Next

' Update field

ActiveDocument.Fields.Update

End Sub

Sub InsertSymbol()

' Show inputbox

Symbol = InputBox("Input symbol")

' Insert field

Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _

PreserveFormatting:=False

' Insert parameter

Selection.TypeText Text:="DOCVARIABLE " & Symbol

' Update field

ActiveDocument.Fields.Update

End Sub

如下圖所示

image.png

這樣兩個(gè)宏就創(chuàng)建好了,為了方便的調(diào)用,將這兩個(gè)宏添加到工具欄中。打開自定義工具欄窗口。找到剛剛新建的兩個(gè)宏,將他們添加到開始選項(xiàng)卡中(憑個(gè)人喜好,愛放哪放哪)。

image.png

然后重新設(shè)置他們的名字和圖標(biāo),此步驟可省略,如下圖所示。

image.png

這樣這兩個(gè)宏就被添加到工具欄中了,如下圖所示。

image.png

為了配合這兩個(gè)宏的使用,我們需要一個(gè)外部文件來儲(chǔ)存各種變量和對(duì)應(yīng)值。這里采用的是 Excel 文件。在當(dāng)前 Word 文檔的所在目錄內(nèi),新建名為 Symbols.xlsx 文件,必須是這個(gè)名字,因?yàn)樵谏厦娴拇a中被寫死了,如果你想換個(gè)名字,要把這行代碼一并改了。

FilePath = ActiveDocument.Path & "\Symbols.xlsx"

然后打開這個(gè) Excel 文件,然后添加你要用到的符號(hào),如下圖所示。

image.png

左邊一列是變量的名稱,右面一列是變量的值。用法就是點(diǎn)擊 Word 工具欄上的”更新符號(hào)“按鈕,Word 會(huì)讀取所有的變量值。如果想在某處插入作者,點(diǎn)擊”插入符號(hào)“按鈕,在彈出的對(duì)話框中填 ”AU“,然后點(diǎn)擊確定,如下圖所示。

然后就出現(xiàn)你事先在 Excel 中定義好的內(nèi)容了,如下圖所示。

image.png

如果后期想修改符號(hào),只需要在 Excel 中統(tǒng)一修改,保存后點(diǎn)擊 Word 工具欄上的”更新符號(hào)“按鈕,Word 中所有的 DOCVARIABLE 域都會(huì)更新。

繼續(xù)查找其他問題的答案?

回復(fù)(0)
返回頂部