Здравствуйте, есть задача, написать макрос, который будет скрывать столбцы по условиям в ячейке B1 и С1. 1. B1 - Скрыть столбцы в диапазоне "Столбец "C" : пока есть значения в строке 4", при выборе значения из выпадающего списка, оставить столбцы в ячейках которых по строке "4" встречается значение из выпадающего списка, остальные - скрыть. 2. C1 - Скрыть столбцы в диапазоне "Столбец "C" : пока есть значения в строке 3". Оставить столбцы, в которых по строке "3" встречается значение из выпадающего списка, остальные - скрыть. 3. Кнопка, которая будет показывать все столбцы.
Помогите, пожалуйста. Заранее благодарю!
Здравствуйте, есть задача, написать макрос, который будет скрывать столбцы по условиям в ячейке B1 и С1. 1. B1 - Скрыть столбцы в диапазоне "Столбец "C" : пока есть значения в строке 4", при выборе значения из выпадающего списка, оставить столбцы в ячейках которых по строке "4" встречается значение из выпадающего списка, остальные - скрыть. 2. C1 - Скрыть столбцы в диапазоне "Столбец "C" : пока есть значения в строке 3". Оставить столбцы, в которых по строке "3" встречается значение из выпадающего списка, остальные - скрыть. 3. Кнопка, которая будет показывать все столбцы.
Здравствуйте, Nikit0K, только вам надо выпадающий список из 3-й колонки убрать, а то он под фильтрацию попадает если не "Общий, руб." и "2015 год" и вы не сможете выбрать значение из второго списка
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim oCol As Range If Not Intersect(Target, Range("B1:C1")) Is Nothing And Target.Count = 1 Then For Each oCol In UsedRange.Columns.Offset(, 2) If oCol.Cells(3) = Range("C1") And oCol.Cells(4) = Range("B1") & " ãîä" Then oCol.EntireColumn.Hidden = False Else oCol.EntireColumn.Hidden = True End If Next End If End Sub
[/vba]
Здравствуйте, Nikit0K, только вам надо выпадающий список из 3-й колонки убрать, а то он под фильтрацию попадает если не "Общий, руб." и "2015 год" и вы не сможете выбрать значение из второго списка
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim oCol As Range If Not Intersect(Target, Range("B1:C1")) Is Nothing And Target.Count = 1 Then For Each oCol In UsedRange.Columns.Offset(, 2) If oCol.Cells(3) = Range("C1") And oCol.Cells(4) = Range("B1") & " ãîä" Then oCol.EntireColumn.Hidden = False Else oCol.EntireColumn.Hidden = True End If Next End If End Sub
Здравствуйте, Nikit0K, только вам надо выпадающий список из 3-й колонки убрать, а то он под фильтрацию попадает если не "Общий, руб." и "2015 год" и вы не сможете выбрать значение из второго списка
Большое спасибо! Очень помогли. Все работает, получилось применить к конечному документу и переместить выпадающий список из колонки, которая подвергалась бы фильтрации.
Здравствуйте, Nikit0K, только вам надо выпадающий список из 3-й колонки убрать, а то он под фильтрацию попадает если не "Общий, руб." и "2015 год" и вы не сможете выбрать значение из второго списка
Большое спасибо! Очень помогли. Все работает, получилось применить к конечному документу и переместить выпадающий список из колонки, которая подвергалась бы фильтрации.Nikit0K