如果我的用户表单上的文本框中没有值,我需要在表中隐藏一行。文档模板始终有书签,我一直在使用下面的代码更改显示/隐藏基于复选框,选项按钮和组合列表的书签文本 - 所有这些工作都很棒。我的最后一步是根据是否存在文本框值将相同的概念应用于行。如何操作此代码以使其适用于表中的行?我要隐藏的行已加入书签。
Set pRng = ActiveDocument.Bookmarks("T6_Keep2").Range
If T6_Founder1.Value = True Then
With pRng.Font
.Hidden = True
End With
With ActiveWindow.View
.ShowHiddenText = False
.ShowAll = False
End With
Else
With pRng.Font
.Hidden = False
End With
With ActiveWindow.View
.ShowHiddenText = True
.ShowAll = True
End With
End If
Set pRng = Nothing
答案 0 :(得分:1)
Word没有“隐藏”表格行的功能。你可以做的最好是将文本格式化为隐藏,将HeightRule设置为“精确”,将行高度设置为0.您仍然可以在屏幕上看到布局中的一些行,但是如果你看起来它似乎不打印查看打印预览页面 - 至少在我的机器上。您可能还想对边框执行某些操作,具体取决于它的确切显示方式。示例代码:
Dim rngBkm as Word.Range
Dim rw as Word.Row
Set rngBkm = ActiveDocument.Bookmarks("test").Range
Set rw = rngBkm.Rows(1)
rw.Range.Font.Hidden = true
rw.HeightRule = wdRowHeightExactly
rw.rng.Height = 0