BuildingBlock 物件 (Word)

代表範本中的建置組塊。 建置組塊是類似於自動圖文集的預先建置內容,其中可能會包括文字、圖像和格式設定。

註解

每個 BuildingBlock 物件是 BuildingBlocks 和 BuildingBlockEntries 集合的成員。 建置組塊都會儲存在 Microsoft Word 範本。 因此,若要存取可用的文件建置組塊,您需要存取附加的範本。 內建的建置組塊會儲存在名為"Building Blocks.dotx"的範本。

使用集合的 Item 方法或 BuildingBlocks 集合可傳回個別的建置組塊。 下列範例會存取 Templates 集合中第一個範本中的第一個建置組塊。

Dim objTemplate As Template 
Dim objBB As BuildingBlock 
 
Set objTemplate = Templates(1) 
Set objBB = objTemplate.BuildingBlockEntries.Item(1)

注意事項

[!注意事項] 根據您如何存取集合,可能會變更傳回的集合。 例如,如果您在存取具有與類別的"General" wdTypeAutoText 類型的建置組塊的集合,傳回的集合可能會不同如果存取具有 wdTypeAutoText 具有 「 自訂 」 類別類型的建置組塊的集合會傳回集合中。 也有不同如果存取搭配使用的 「 一般 」 類別類型 wdTypeCustomAutoText 的建置組塊的集合會傳回集合中。 因此,從 BuildingBlockEntries 集合存取集合中的第一個項目可能不同於從 BuildingBlocks 集合存取集合中的第一個項目。

若要建立新的建置組塊,您可以使用BuildingBlockEntries集合或BuildingBlocks集合的Add方法。 不過,建立新建置組塊的建議方式是使用BuildingBlockEntries集合的Add方法。 下列範例會將選定文字加入到 Templates 集合中第一個範本的浮水印建置組塊庫。

Dim objTemplate As Template 
Dim objBB As BuildingBlock 
 
Set objTemplate = Templates(1) 
 
Set objBB = objTemplate.BuildingBlockEntries _ 
 .Add(Name:="New Building Block Entry", _ 
 Type:=wdTypeWatermarks, _ 
 Category:="General", _ 
 Range:=Selection.Range)

使用 Insert 方法可將新的建置組塊插入到文件中。 下列範例會將第一個範本中的第一個建置組塊插入到使用中文件內的插入點。

Dim objTemplate As Template 
Dim objBB As BuildingBlock 
 
Set objTemplate = Templates(1) 
Set objBB = objTemplate.BuildingBlockEntries.Item(1) 
 
objBB.Insert Selection.Range

使用 Delete 方法來移除從範本建置區塊。 下列範例會刪除 Templates 集合中的第一個範本中的第一個建置組塊。

Dim objTemplate As Template 
 
Set objTemplate = Templates(1) 
 
objTemplate.BuildingBlockEntries(1).Delete

建置組塊便會依據類別和類型。 使用 BuildingBlockTypes 集合存取個別 BuildingBlockType 物件。 用以存取個別的 Category 物件之 Categories 集合。 然後使用BuildingBlocks屬性來存取Category物件的BuildingBlocks集合。 下列範例會列印至 即時運算] 視窗 的第一個範本中的所有建置組塊類型和類別名稱。 (此範例會假設 即時運算] 視窗 為可見)。

Dim objTemplate As Template 
Dim objBBT As BuildingBlockType 
Dim objCat As Category 
Dim intCount As Integer 
Dim intCountCat As Integer 
 
Set objTemplate = Templates(1) 
 
For intCount = 1 To objTemplate.BuildingBlockTypes.Count 
 Set objBBT = objTemplate.BuildingBlockTypes(intCount) 
 If objBBT.Categories.Count > 0 Then 
 Debug.Print objBBT.Name 
 For intCountCat = 1 To objBBT.Categories.Count 
 Set objCat = objBBT.Categories(intCountCat) 
 Debug.Print vbTab & objCat.Name 
 Next 
 End If 
Next

每一個建置組塊都會有一些屬性,這些屬性包含該建置組塊所適用的專門資訊,如 Name 、 Description 、 Type 和 Value 等屬性。

如需建置組塊的詳細資訊,請參閱使用建置組塊。

方法

屬性

請參閱

支援和意見反應

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