Похожие макросы используются для управления отображением столбцов). Например, в результате выполнения макроса, код которого приведен в листинге 3.17, будет скрыт столбец В.
Sub HideCollumn()
Columns(2).Hidden = True
End Sub
Если в данном макросе заменить 2, например, на С, то будет скрыт столбец С (то есть в коде макроса можно указывать как порядковый номер столбца, так и соответствующую ему букву).
Для скрытия нескольких столбцов можно применить, например, такой макрос (листинг 3.18).
Sub HideCollumns()
Columns(«E:F»).Hidden = True
End Sub
В результате выполнения данного макроса будут скрыты столбцы Е и F.
Чтобы включить отображение скрытых столбцов, необходимо в соответствующих макросах заменить значение True на False и запустить их на выполнение.
Можно также скрывать строки и столбцы, ориентируясь на адрес или имя ячейки. Например, используйте такой макрос (листинг 3.19).
Sub HideCell()
Range(«Секрет»).EntireRow.Hidden = True
End Sub
После его применения будет скрыта строка, в которой находится ячейка с именем Секрет. Этот трюк удобно использовать, например, когда нужно срочно скрыть какие-либо данные, но адрес ячейки вспомнить не удается, а известно только ее имя. Однако при необходимости вместо имени можно указывать конкретный адрес ячейки (например, если в приведенном макросе заменить Секрет на А2, то будет скрыта строка 2).
Можно также указывать диапазон ячеек, строки с которыми нужно скрыть. Пример такого макроса приведен в листинге 3.20.
Sub HideCell()
Range(«B3:D4»).EntireRow.Hidden = True
End Sub
После применения данного макроса будут скрыты строки 3 и 4.
Чтобы вновь отобразить скрытую строку (или строки), необходимо в соответствующих макросах изменить значение True на False и запустить их на выполнение.
Управлять отображением столбцов также можно, исходя из адреса или имени ячейки. Вот пример такого макроса (листинг 3.21).
Sub HideCell()
Range(«Секрет»).EntireColumn.Hidden = True
End Sub
В данном случае будет удален столбец, содержащий ячейку Секрет. Здесь также можно указывать как имя, так и адрес ячейки (например, если в приведенном макросе заменить Секрет на C3, то будет скрыт столбец С).
Можно использовать такой макрос (листинг 3.22).
Sub HideCell()
Range(«C2:D5»).EntireColumn.Hidden = True
End Sub
После применения данного макроса будут скрыты столбцы С и D.
Чтобы вновь включить отображение скрытых столбцов, нужно в соответствующих макросах заменить значение True на False.
Быстрое выделение ячеек, расположенных через интервал
С помощью трюка, который рассматривается в данном разделе, можно быстро выделить любое количество ячеек, расположенных через определенный интервал. Пример макроса, который позволяет решить эту задачу, приведен в листинге 3.23.
Sub IntervalCellSelect()
Dim intFirstRow As Integer ' Первая строка для выделения
Dim intLastRow As Integer ' Последняя строка для выделения
Dim rgCells As Range ' Объединение выделяемых ячеек
Dim intRow As Integer
intFirstRow = 3
intLastRow = 300
' Формирование объединения ячеек в столбце "B" от строки _
intFirstRow до строки intLastRow с шагом 3
For intRow = intFirstRow To intLastRow Step 3
If rgCells Is Nothing Then
' Первая ячейка в объединении
Set rgCells = Cells(intRow, 1)
Else
' Добавление очередной ячейки в объединение
Set rgCells = Union(rgCells, Cells(intRow, 1))
End If
Next
' Выделение всех ячеек в объединении
rgCells.Select
End Sub