excel - 尝试根据单元格范围的单元格值隐藏工作表到工作表范围
问题描述
我有一本工作簿,在工作表方面变得非常紧凑。我不会一直使用它们,所以我想根据我正在做的事情隐藏未使用的那些。
我有一个主索引,其中有一列具有 G2:G30 的值范围,以指示是否显示工作表。我有一系列的工作表,这些工作表的编号范围从 1、2、3、..... 到 26。我有一个简单的 VBA 解决方案,它将显示“Y”的单个 G2 以显示或显示否则隐藏。我对这将如何迭代这两个范围以匹配事物的线索为零。它们是增量的。
Private Sub Worksheet_Change(ByVal Target As Range)
If [G2] = "Y" Then
Sheets("1").Visible = True
Else
Sheets("1").Visible = False
End If
End Sub
我真的需要它来遍历范围以指示工作表中的工作表。
解决方案
我想建议您对您的要求进行一些更改。如果在单元格 H2:H30 中添加工作表名称,则可以执行以下操作:
Dim SheetRef As Range
Dim TargetSheet As Worksheet
For Each SheetRef In Range("G2:G30")
Set TargetSheet = ThisWorkbook.Worksheets(SheetRef.Offset(0, 1).Value)
TargetSheet.Visible = (UCase(SheetRef.Value) = "Y")
Next
这将从 G2、G3 等右侧的单元格中读取工作表的名称,并使用它来控制可见性。
如果您不这样做,您将不得不找到另一种方法来了解哪个切换指的是哪个工作表。
推荐阅读
- java - 单个执行器服务中的 RejectedExecutionException
- mysql - Codeigniter 查看未定义变量错误
- c# - POST 到外部 API 后如何使用 Task.Delay 调用 GET 响应?
- docker - 在 Fargate 上运行 docker(网络作为本地主机)的问题
- javascript - 如何让 JS “看到”已发布到当前页面的 html
- webpack - 配置 webpack、coffeescript、mocha 和 mochapack 的问题
- entity-framework - 错误无法更新数据库以匹配当前模型,因为有待处理的更改
- javascript - 在 JS 中从 chrome 扩展中保存和读取数据
- xamarin.forms - Xamarin Forms CollectionView 无法正常工作(支持库?)
- r - R 将 SQLiteResult 记录集导出到 Excel 或 csv