卡饭网 > wps > 正文

wps表用VBA设置一个按钮,点击就自动隐藏或者显示空白行?

来源:本站整理 作者:东城影 时间:2018-04-19

在自动化办公中,如果希望在WPS表格中只显示指定的部分区域,其余部分设置为隐藏,则需要多次使用行隐藏和列隐藏命令。作为办公高手,可以用VBA代码将选中的连续区域以外的区域一次性全部隐藏。

第一步,制作文档。

打开WPS表格 2009(在线文档公测版),新建一个空白文档,在一些区域输入数字,作为使用区域。

第二步,点击“工具”—“宏”—“创建”新宏。



第三步,在Microsoft Visual Basic 中输入或复制下列代码。

Sub HiddenSurroundRange()

Dim CelFirst As Range, CelLast As Range

If Not Selection Is Nothing Then

With Selection

'当前选中区域的第一个单元格

Set CelFirst = .Cells(1)

'当前选中区域的最后一个单元格

Set CelLast = .Cells(.Cells.Count)

End With

If CelFirst.Address <> "$A$1" Then

'蓝色区域

With Range([a1], CelFirst.Offset(IIf(CelFirst.Row = 1, 0, -1), IIf(CelFirst.Column = 1, 0, -1)))

'如果当前选中区域不包括第一行,则隐藏蓝色区域所在的行

If CelFirst.Row <> 1 Then .EntireRow.Hidden = True

'如果当前选中区域不包括第一列,则隐藏蓝色区域所在的列

If CelFirst.Column <> 1 Then .EntireColumn.Hidden = True

End With

End If

If CelLast.Address <> "$IV$65536" Then

'与上面类似处理绿色区域

With Range(CelLast.Offset(IIf(CelLast.Row = 65536, 0, 1), IIf(CelLast.Column = 256, 0, 1)),

[IV65536])

If CelLast.Row <> 65536 Then .EntireRow.Hidden = True

If CelLast.Column <> 256 Then .EntireColumn.Hidden = True

End With

End If

End If

End Sub



第四步,执行“视图—工具—控件工具箱”,单击“按钮”,选择合适的位置插入一个悬浮的“隐藏”按钮,为它指定HiddenSurroundRange宏。

第五步,选定使用区域,点击“隐藏”按钮,使用区域以外的区域一次性全部隐藏。



小提示:WPS默认安装没有VBA环境,也无法使用宏功能,若要实现教程所述功能,需要另外安装VBA,WPS office在线文档公测版可以共享文档,只要有邮箱,就可以共享VBA文档,免去寻觅、下载之苦。另外, 由于实例中运用了“宏”,在打开该文件时要启用宏。

相关推荐