Посмотрите плиз,
у меня почему-то не выполняется сравнение.
В общем смысл задачи:
1.Макрос запускается автоматом при открытии документа.
При выборе значения в фильтре в колонке один макрос берет значение фильтра и сравнивает со значением в строке 2 в колонках с 4 по 9.
после оставляет чего скрывает колонки с 4 по 9 во второй строке которых значение не совпадает со значением фильтра.
При изменеиии фильтра, колонки снова отображаются все и скрываются уже колонки в которых во второй строке не совпадает значение новой выборки из фильтра и так до тех пор, пока открыт файл.
С уважением,
Михаил.
[vba]Код
Sub Фильтр()
If ThisWorkbook.Worksheets(1).AutoFilter.Filters(1).On Then
filter_string = ThisWorkbook.Worksheets(1).AutoFilter.Filters(1).Criteria1
For i = 4 To 9
If Cells(2, i) = filter_string Then
Columns(i).EntireColumn.Hidden = False
Else
Columns(i).EntireColumn.Hidden = True
End If
Next
End If
End Sub
[/vba]