我有一个文件,其中将包含准备使用工作表工作。有人用UserForm选择一组要处理的已定义的工作表。“A计划”或“B计划”等
通过选择其中的一组,就会从sheet4.range("i4")开始用单元格来写ex。“A项目”。对于每一个新的开始,将只显示使用UserFrom选择的集合。我需要为用户添加的所有附加页做一个简短的修复。
在select case表达式中,我需要为大于、sheet4.、So sheet5、sheet6等的表创建一个语句。
我应该如何在以下代码中编写这一行代码:
为了前夫。case "Project A",所有带有sheetX > sheet4的新页都将被设置为“隐藏”吗?
'First part of code is unimportant
Private Sub Workbook_Open()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
'Step 1: Unhide All Worksheets
ws.Visible = xlSheetVisible
'Step 2: Loop to next worksheet
Next ws
'in Range I4 Table 4 = "Projekt A" or "Projekt B" etc.
Select Case sheet4.Range("i4").Text
Case "Project A"
'Step 3: Hide two defined sheets sheet("start") and sheet3 and all bigger than sheet.4
(sheet.5, sheet.6...)
Sheets("START").Visible = xlVeryHidden
sheet3.Visible = xlVeryHidden
'I need here to write that all table bigger than 4 will be set =xlVeryHidden
Case "Project B"
End Select
Sheets("START").Visible = xlVeryHidden
sheet1.Visible = xlVeryHidden
Call sheet1.auo_open
End Sub发布于 2018-08-19 04:34:57
下面是一个隐藏工作表的简单示例,您不希望用户看到它,让特定的工作表可见。此代码将允许用户通过转到Home_Cells_Format_Visibility_Hide & Unhide_Unhide Sheet来取消隐藏工作表。但是,如果使用xlsheetveryhidden,则用户无法取消隐藏工作表
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
If Not (ws.Name = "Sheet1" Or ws.Name = "Sheet2" _
Or ws.Name = "Sheet3" Or ws.Name = "Sheet4") Then
ws.Visible = xlSheetHidden
End If
Next ws编辑:万一有人想使用Select
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
Select Case ws.Name
Case "Sheet1", "Sheet2", "Sheet3", "Sheet4"
Case Else
ws.Visible = xlSheetHidden
End Select
Nexthttps://stackoverflow.com/questions/51908878
复制相似问题