Обычно я использую макрос для отображения и скрытия столбцов с помощью флажка. Я настроил его, определив столбцы в коде макроса.
Sub Hideshow() If Range("A1").Value = "True" Then ActiveSheet.Columns("B:C").Hidden = False ElseIf Range("A1").Value = "False" Then ActiveSheet.Columns("B:C").Hidden = True Else Return End If End Sub
Для этого кода A1 = результат установки флажка (True/False), а B:C — столбцы, которые я скрываю или, если они уже скрыты; показывает.
Однако теперь я делаю более динамичную версию этого, потому что мне надоедает прокручивать код макроса и изменять ссылку на каждую колонку, когда добавляется новая колонка или изменяется диапазон колонок.
Теперь я поместил столбцы, которые хочу скрыть, в ячейку A2 на моем листе, например, B: C
Я хотел бы, чтобы код макроса использовал значение этой ячейки как «определенный диапазон»? чтобы показать и скрыть диапазон столбцов, который я определил в ячейке A2.
Я нашел много похожих сообщений, но они немного отличаются, и я не могу заставить их работать для моего конкретного сценария.
Новый будет выглядеть примерно так
Sub Hideshow() If Range("A1").Value = "True" Then ActiveSheet.Columns(" The Value in A2 ").Hidden = False ElseIf Range("A1").Value = "False" Then ActiveSheet.Columns(" The Value in A2").Hidden = True Else Return End If End Sub
Любые идеи?