我们这里有多个产品,我正在为MS Word创建需求文档。这些产品几乎没有共同之处,并且几乎没有针对单个产品的特性。
我想创建一个单一的需求文档,其中包含一个包含产品名称的下拉列表。每当有人选择产品时,文档应显示所有产品的共同要求,特定于该产品的要求以及隐藏其他产品特有的要求。
例如 - 如果有两个产品列出了Product_1和Product_2。选择Product_1应仅显示与Product_1相关的要求,并隐藏与Product_2相关的要求
这是我搜索和尝试的内容 -
Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
If ContentControl.Tag = "List" Then
Bookmarks("Product_1").Range.Font.Hidden = False
Bookmarks("Product_2").Range.Font.Hidden = False
Select Case ContentControl.Range.Text
Case "Product_1"
Bookmarks("P2").Range.Font.Hidden = True
Case "Product_2"
Bookmarks("P1").Range.Font.Hidden = True
End Select
End If
End Sub
但问题是我无法在单个书签下标记多个文本块。
让我知道完成这项任务的另一种方法是什么?
提前致谢
Nitin Jadhav
答案 0 :(得分:1)
你应该走另一条路:
使用“Product_1_1”,“Product_1_2”,...
使用“Product_2_1”,“Product_2_2”,...
以及其他产品
然后按如下方式更改事件处理程序:
Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
Dim bkm As Bookmark
If ContentControl.Tag = "List" Then
For Each bkm In ActiveDocument.Bookmarks
bkm.Range.Font.Hidden = InStr(bkm.Name, "Product_") And Not InStr(bkm.Name, ContentControl.Range.Text)
Next
End If
End Sub