如何在 Excel 中隐藏工作簿中多个工作表上的列?
Excel 允许用户快速隐藏单个工作表中的列,但您是否尝试过同时隐藏多个工作表中的列?通常,如果您尝试选择所有工作表并使用"隐藏"功能,则无法正常工作。在本文中,我将讨论如何快速隐藏多个工作表中的列。
有时可能需要显示或打印工作表,以便部分数据被遮挡,但工作簿中的数据保持不变。为了隐藏隐私或易混淆的信息,可以隐藏行或列。本文将演示一个示例,使用 VBA 代码隐藏工作簿中多个工作表上的列。
使用 VBA 代码隐藏工作簿中多个工作表上的列
步骤 1
创建示例数据以了解处理步骤。使用 C 列填写学生姓名,使用 D 列填写科目名称,使用 E 列填写分数。
步骤 2
要打开 Visual Basic 代码区域,请点击 代码 组下的 开发人员选项卡,然后选择 Visual Basic 选项,如下图所示。
注意 − 要访问 Microsoft Visual Basic for Applications 窗口,另一种方法是同时按住 ALT + F11 键。这也会打开相同的代码区域。
步骤 3
上述步骤将打开"Microsoft Visual Basics for Applications"对话框,如下所示 -
步骤 4
在上述打开的对话框中,点击"插入"选项卡。这将打开一个新的下拉列表。在新窗口中,选择"模块"选项,如下所示 -
步骤 5
点击模块后,Visual Basic 代码区域将显示在出现的对话框中。请参考图片以便正确引用 -
步骤 6
在打开的代码编辑器中,复制以下代码 -
' 定义 meth_to_hide_Column() 方法头
Sub meth_to_hide_Column()
' declaring required variables
Dim i As Integer
Dim col_s As String
On Error Resume Next
' define input box
col_s = Application.InputBox("Enter column range to hide,Eg A:A OR A:B", _
"VBA code block result", , , , , , 2)
' if column
If col_s = "" Then
' display message
MsgBox "Empty columns", vbInformation, "Enter valid data columns!!!"
'end of sub block
Exit Sub
' end of if block
End If
' for each loop expression
For i = 1 To ThisWorkbook.Worksheets.Count
' setting column value to hidden
ThisWorkbook.Sheets(i).Columns(col_s).Hidden = True
' next statement
Next i
' use go to loop
On Error GoTo 0
' end of sub block
End Sub
代码快照如下 -
步骤 7
现在按 F5 键运行代码,Microsoft Excel 中将出现一个宏对话框,如下图所示。
步骤 8
然后点击运行按钮,如下图所示 -
步骤 9
代码将在屏幕上显示一个"VBA 代码块结果"对话框。此对话框包含输入标签,用户可以根据提供的格式输入想要隐藏的标签。在本例中,用户想要隐藏"C"列。最后,点击对话框中的"确定"按钮。请注意,在本例中,用户只输入了单个列,但多个输入列也是可以接受的。假设用户输入 A:C,则从 A 到 C 的所有列都将被隐藏,下一步的输出结果也类似。
步骤 10
完成所有步骤后,C 列将自动隐藏。请参考下方的输出截图。
结论
本文帮助用户学习了如何使用 VBA 代码隐藏多个工作表中的列。提供的步骤详尽透彻,所有细节都准确无误。
相关文章
有用资源
excel 参考教程 - 该教程包含有关 excel 的更多信息:https://www.cainiaomax.com/excel/

