VBA Excel试图隐藏多个工作表中的相同列

vwkv1x7d  于 2023-02-20  发布在  其他
关注(0)|答案(1)|浏览(168)

我在几个工作簿中有完全相同的列要隐藏。
不幸的是,下面的代码不能很好地工作:

Dim sh As Worksheet
Dim sNames As Variant
sNames = Array("BoM North", "BoM North Extras", "BoM South")
Dim BomColumns As Range
Set BomColumns = Columns("I:J")
For Each sh In sNames
  Sheets(sh).BomColumns.Hidden = True
Next was

当我收到一个错误时:在以下行中需要对象:
对于Shnames中的每个sh
代码是从这里提取的:
https://www.mrexcel.com/board/threads/vba-to-hide-columns-on-multiple-sheets.961675/
此处应分配什么对象?
更新:
使用以下代码:
工作表尺寸'工作表尺寸
按范围设置调暗BomColumns BomColumns =列("I:J")

For Each ws In Sheets(Array("BoM North", "BoM North Extras", "BoM South"))
With ws.Range(BomColumns)
.Hidden = True
End With
Next was

我有一个错误:* * 方法"工作表范围"在以下行失败**:带工作范围(BomColumns)

sigwle7e

sigwle7e1#

这是一种极简主义的做法:

Dim ws As Worksheet

  For Each ws In ThisWorkbook.Worksheets
      ws.Columns("I:J").Hidden = True
    Next

如果不是您需要的所有工作表,只需将ThisWorkbook.Worksheets替换为所需的范围

相关问题