我正在使用工作表1中的4个连续列在工作表2中生成图表。我想在工作表1中隐藏这4列。
我尝试了以下代码来隐藏列:
Set allColumns = dataSheet.Columns("J:M")
allColumns.Hidden = True
答案 0 :(得分:1)
Sub AllCol()
Const cVntSheet As Variant = "Sheet1" ' Worksheet Name/Index
Const cStrRange As String = "J:M" ' Range Address
Dim dataSheet As Worksheet ' Worksheet
' Create a reference to the worksheet.
Set dataSheet = Worksheets(cVntSheet)
' Hide the range.
dataSheet.Columns(cStrRange).Hidden = True
End Sub
答案 1 :(得分:1)
用您的实际工作表名称交换Sheet1
。
Sub HideMe()
ThisWorkbook.Sheets("Sheet1").Columns("J:M").Hidden = True
End Sub
请注意,此操作可以一行完成。如果您想使用变量(工作簿或工作表),则它们在组合时应构建以上字符串
类似:
Dim wb as Workbook: Set wb = ThisWorkbook
Dim ws as Worksheet: Set ws = wb.Sheets("Sheet1")
Dim hm as String: hm = "J:M"
ws.Columns(hm).Hidden = True
如果将变量替换为最后一行,则最终将得到第一行中显示的完全相同的代码行。