VBA Excelmacros:使用范围作用于不同的工作表

在VBA编程方面,我是一个初学者。

我有一个基于一个单元格中的值隐藏或显示列的macros:

Sub HideColumnsMacro() Range("b8:o8").EntireColumn.Hidden = False v1 = Range("b2").Value + 1 If v1 < 12 Then With Range("b8") Range(.Offset(0,v1), .Offset(0, 12)).EntireColumn.Hidden = True End With End If End Sub 

我希望能够在不同的工作表上更改单元格时获得相同的function。 有没有一种方法可以告诉这个macros在这个表单上运行,当它从另一个表单运行?

在你的macros中,指定确切的表格:

 Sheets("Sheet1").Range("b8:o8").EntireColumn.Hidden = False 

使用工作表的名称来限定您的Range

 Sheet1.Range("b8:o8").EntireColumn.Hidden = False