如何在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
在打开的代码编辑器中,复制下面给出的代码:
' define meth_to_hide_Column() method header 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代码以隐藏多个工作表中列的策略。提供的步骤详细而周全。所有提供的细节都准确而精确。