WordBasic 和 Visual Basic 的概念差異

Visual Basic for Applications (VBA) 與 WordBasic 的主要差異在於,WordBasic 語言由約 900 個指令組成的平面清單,而 Visual Basic 則包含一個物件階層,每個物件會暴露一組特定的方法與屬性, (類似於 WordBasic) 中的語句與函式。 雖然大部分 WordBasic 命令都可以隨時執行,不過 Visual Basic 只會在指定的時間公開可用物件的方法和屬性。

物件是 Visual Basic 的基本建置組塊;您在 Visual Basic 中進行的每項動作幾乎都與修改物件有關。 Word 的每個元素——例如文件、段落、欄位和書籤——都可以用 Visual Basic 中的物件來表示。 與命令不同的是,某些物件只能從其他物件存取。 例如,字 物件可以從各種物件存取,包括 樣式選取尋找 物件。

套用粗體格式設定的程式設計工作會說明兩種程式設計語言的差異。 下列 WordBasic 指令會將粗體格式設定套用至選取範圍。

Bold 1

下列範例是將粗體格式設定套用至選取範圍的 Visual Basic 相對應項目。

Selection.Font.Bold = True

Visual Basic 不包含 粗體 語句與函式。 取而代之的是 Bold 物業。 (屬性通常是物件的屬性,例如其大小、顏色,或是否為粗體。) 體是 字型 物件的屬性。 您可以遵循物件階層來建置指令,以便將粗體格式設定套用至選取範圍。 依照物件階層,你可以建立指令,將粗體格式套用到選取中。 Bold 屬性是可讀寫的布林值屬性。 這就表示 Bold 屬性可設定為 TrueFalse (開啟或關閉),也可以傳回目前的值。 下列 WordBasic 指令會傳回一個值,指出粗體格式設定是否已套用至選取範圍。

x = Bold()

下列範例是傳回選取範圍之粗體格式設定的 Visual Basic 相對應項目。

x = Selection.Font.Bold

Visual Basic 的思考程序

若要在 Visual Basic 中執行工作,您必須決定適當的物件。 例如,如果您想要套用在 [字型] 對話方塊中找到的字元格式設定,請使用 Font 物件。 接著你需要決定如何從應用程式物件「深入」到 Font 物件的 Word 物件階層,再透過包含你想修改的字型物件的物件。 例如,在確定物件 (路徑後,) 使用物件瀏覽器、說明功能,或 Visual Basic 編輯器中的自動列出成員等功能,決定可套用哪些屬性與方法。 如需使用屬性和方法向下切入至物件的詳細資訊,請參閱了解物件、屬性及方法

屬性和方法通常會適用於 Word 物件階層中的多重物件。 例如,下列指令會將粗體格式設定套用至整份文件。

ActiveDocument.Content.Bold = True

此外,物件本身常常存在於物件階層的多個位置。

Selection 和 Range 物件

大部分 WordBasic 命令都會修改選取範圍。 例如, Bold 命令會使用粗體格式設定來格式化選取範圍。 InsertField 命令會在插入點插入一個功能變數。 當您想要在 Visual Basic 中使用選取範圍時,請使用 Selection 屬性來傳回 Selection 物件。 選取範圍可能是一個文字區塊或插入點。

下列 Visual Basic 範例會在選取範圍後面插入文字和新的段落。

Selection.InsertAfter Text:="Hello World" 
Selection.InsertParagraphAfter

除了使用選取範圍以外,您也可以在文件中定義並使用各種文字範圍。 範圍物件指的是文件中連續的區域,具有起始字元位置與結尾字元位置。 與文件中使用書籤的方式很類似,Visual Basic 中 Range 物件是用來識別文件的各部分。 然而,與書籤不同的是,Range 物件對使用者來說是看不見的,除非使用 Select 方法選取該範圍。 例如,您可以使用 Visual Basic,在文件中的任何位置套用粗體格式設定,但不會變更選取範圍。 下列範例會將粗體格式設定套用至使用中文件的前 10 個字元。

ActiveDocument.Range(Start:=0, End:=10).Bold = True

下列範例會將粗體格式設定套用至第一個段落。

ActiveDocument.Paragraphs(1).Range.Bold = True

這兩個範例都會變更使用中文件的格式設定,但不會變更選取範圍。 如需 Range 物件的詳細資訊,請參閱使用 Range 物件

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應