Excel 存在某些条件时如何隐藏工作表
我正在尝试编写一个代码,该代码通过循环自动隐藏工作表选项卡(如果存在特定名称),然后使用vlookup添加列。如果这些名称都不存在,则不执行任何操作。如果我没有手动评论的话。我试图隐藏它是否存在(Michael、Jami、Stam、Christina)如果它们存在,我想隐藏它们如果这些名字都不存在,代码中没有任何内容,这给了我一个错误Excel 存在某些条件时如何隐藏工作表,excel,vba,Excel,Vba,我正在尝试编写一个代码,该代码通过循环自动隐藏工作表选项卡(如果存在特定名称),然后使用vlookup添加列。如果这些名称都不存在,则不执行任何操作。如果我没有手动评论的话。我试图隐藏它是否存在(Michael、Jami、Stam、Christina)如果它们存在,我想隐藏它们如果这些名字都不存在,代码中没有任何内容,这给了我一个错误 Sub Admin_Auto_Add() Dim rec_range As String Dim wb As Workbook Dim
Sub Admin_Auto_Add()
Dim rec_range As String
Dim wb As Workbook
Dim lookup_reference As String
With Original
ActiveWorkbook.Sheets("Michael").Visible = xlSheetHidden
ActiveWorkbook.Sheets("Jami").Visible = xlSheetHidden
' ActiveWorkbook.Sheets("Stam").Visible = xlSheetHidden
ActiveWorkbook.Sheets("Christina").Visible = xlSheetHidden
Columns("C:C").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("C1").Value = "Admin_Vlookup"
rec_range = getColRangeFunction("Admin_Vlookup")
Range(rec_range).Formula = "=VLOOKUP(B2,'[Pairing List.xlsx]Recruiting_Admins'!$A$1:$B$32, 2,0)"
Range(rec_range).Select
End With
End Sub
也许是这样吧
Sub HideSheets()
Dim ws As Worksheet
Dim arrNames As Variant
Dim Res As Variant
' add/remove/change names of sheets you want to hide here
arrNames = Array("Michael", "Jami", "Stam", "Christina")
For Each ws In ActiveWorkbook.Sheets
Res = Application.Match(ws.Name, arrNames, 0)
If Not IsError(Res) Then
ws.Visible = xlSheetHidden
End If
Next ws
End Sub
如何确定要隐藏的图纸以及何时隐藏?在您发布的代码中,您似乎隐藏了所有4张工作表。我是VBA新手,不知道如何循环告诉代码要隐藏哪些工作表,哪些工作表不基于场景。这就是我需要帮助的原因谢谢你能告诉我怎么做吗。尝试将此应用于代码,如果您在尝试实现时遇到特定问题,请返回。在循环的每个实例中,您都可以通过变量
ws
引用当前工作表。因此,对所有工作表应用相同的逻辑。如果您需要条件,那么如果ws.Name=“Michael”那么[测试此标准]如果ws.Name=“urdearboy”那么[测试此标准]
在工作表中循环很简单,但您没有告诉我们如何确定工作表是否应隐藏。你提到了一个“名字”的存在,你能详细介绍一下吗?这很有帮助,非常感谢