Sub Неделя_Скрыть()
Dim cell As Range
For Each cell In ActiveSheet.UsedRange.Rows(1).Cells 'проходим по всем ячейкам первой строки
If cell.Value = "2" Then cell.EntireColumn.Hidden = True 'если в ячейке x - скрываем столбец
Next
Application.ScreenUpdating = True
End Sub
Как изменить условие, если в ячейка не равна "х", а содержит "х", то есть суть в том, что в названиях содержится разный текст, но у него есть общие буквы к примеру хруст и храп и все столбцы содержащие "х" нужно скрыть
Mershik,ок спасибо! Добавил условие IF, для возможности свернуть и развернуть одной кнопкой, стал то ругаться?
Код
Private Sub ToggleButton2_Click()
If Me.ToggleButton1.Value = True Then
For Each cell In ActiveSheet.UsedRange.Rows(1).Cells
If cell.Value Like "*x*" Then cell.EntireColumn.Hidden = True
Else
For Each cell In ActiveSheet.UsedRange.Rows(1).Cells
If cell.Value Like "*x*" Then cell.EntireColumn.Hidden = False
Next
End Sub
skais675, ну например так (может не корректно написал)
Код
Sub Неделя_Скрыть()
Dim cell As Range
Dim arr
V = "январь" & "," & "февраль" & "," & "март" & "," & "апрель" & "," & "май" & "," & "июнь" & "," & "июль" & "," & "август" & "," & "сентябрь" & "," & "октябрь" & "," & "ноябрь" & "," & "декабрь"
arr = Split(V, ",")
For Each cell In ActiveSheet.UsedRange.Rows(1).Cells 'проходим по всем ячейкам первой строки
For i = LBound(arr) To UBound(arr)
If cell.Value Like "*" & arr(i) & "*" Then cell.EntireColumn.Hidden = True: Exit For
Next i
Next cell
Application.ScreenUpdating = True
End Sub
Добавил условие IF, для возможности свернуть и развернуть одной кнопкой, стал ругаться?
Код
Private Sub ToggleButton2_Click()
If Me.ToggleButton1.Value = True Then
For Each cell In ActiveSheet.UsedRange.Rows(1).Cells
If cell.Value Like "*x*" Then cell.EntireColumn.Hidden = True
Else
For Each cell In ActiveSheet.UsedRange.Rows(1).Cells
If cell.Value Like "*x*" Then cell.EntireColumn.Hidden = False
Next
End Sub
Private Sub ToggleButton1_Click()
If Me.ToggleButton1.Value = True Then
For Each cell In ActiveSheet.UsedRange.Rows(1).Cells
Debug.Print ActiveSheet.UsedRange.Rows(1).Cells.Address
If cell.Value Like "*ÍÅÄÅËß*" Then cell.EntireColumn.Hidden = True
Next
Else
For Each cell In ActiveSheet.UsedRange.Rows(1).Cells
If cell.Value Like "*ÍÅÄÅËß*" Then cell.EntireColumn.Hidden = False
Next
End If
End Sub
Private Sub ToggleButton1_Click()
'If Me.ToggleButton1.Value = True Then
For Each cell In ActiveSheet.UsedRange.Rows(1).Cells
'Debug.Print ActiveSheet.UsedRange.Rows(1).Cells.Address
If cell.Value Like "*НЕДЕЛЯ*" Then cell.EntireColumn.Hidden = Me.ToggleButton1.Value 'True
Next
'Else
' For Each cell In ActiveSheet.UsedRange.Rows(1).Cells
' If cell.Value Like "*НЕДЕЛЯ*" Then cell.EntireColumn.Hidden = False
' Next
'End If
End Sub