Как скрыть строки по условию в excel
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Скрытие и отображение значений ячеок
Предположим, у вас есть лист, содержащего конфиденциальную информацию, например зарплату сотрудника, которую не должен видеть коллега, который останавливается на вашем рабочем месте. Или, возможно, вы умножете значения в диапазоне ячеек на значение в другой ячейке, которое не должно быть видно на этом сайте. Применив пользовательский числовой формат, можно скрыть значения этих ячеек на этом сайте.
Примечание: Хотя ячейки со скрытыми значениями отображаются пустыми на листе, их значения остаются строка формул в том месте, где с ними можно работать.
Скрытие значений ячеок
- Выберем ячейку или диапазон ячеек, которые содержат значения, которые нужно скрыть. Дополнительные сведения см. в статье Выбор ячеек, диапазонов, строк и столбцов на сайте.
Примечание: Выбранные ячейки будут пустыми на листе, но при щелчке одной из ячеек в области формул появится значение.
кнопку запускадиалогового окна .
Совет: Чтобы отменить выделение ячеек, щелкните любую ячейку на листе.
Отображение скрытых значений ячеев
- Выберем ячейку или диапазон ячеек, которые содержат скрытые значения. Дополнительные сведения см. в статье Выбор ячеек, диапазонов, строк и столбцов на сайте.
- На вкладке Главная нажмите кнопку
кнопку запускадиалогового окна .
Совет: Чтобы отменить выделение ячеек, щелкните любую ячейку на листе.
Как в excel скрыть столбец при условии?

Как сделать, чтобы исчезли столбцы (и не печатались на принтере), если указанная ячейка этого столбца на 9 строке, равная «»
Ячейки из диапазона =AF9:AH9
Например, сейчас пустые ячейки AG9 (скрывается столбец AG), AH9 (скрывается столбец AH).
Работаем только с диапазоном AF9:AH9, повторюсь, интересует исчезновение столбцов AF, AG , AH, если ячейки AF9, AG9 , AH9 пустые, соответственно.
Если бы была пустая ячейка AF9 , то скрывался бы столбец AF весь.
Это к вопросу о горизонтальном фильтре)
P.S. В листе «ТЕХ» сейчас выбран месяц Февраль 29 дней, соответственно, столбец с 30 и 31 числом должен исчезать.
- Вопрос задан более трёх лет назад
- 3752 просмотра
1 комментарий
Средний 1 комментарий
Как скрыть строки по условию в excel
Private Sub Worksheet_SelectionChange( ByVal Target As Range)
If Cells(1, 1).Value = 0 Then
Rows(3).Hidden = True
Else
Rows(3).Hidden = False
End If
End Sub
ICQ: 308-534-060
Михаил, идея верная. Только есть к чему придраться:
1. Почему мы это делаем в событии Worksheet_SelectionChange?
2. У тебя Target никак не используется и почему-то проверяется исключительно A1 и при этом скрывается другая — третья стрка.
Если макросом, то я бы сделал примерно так:
- Sub HideZeros(j As Long ) ‘j — номер столбца для проверки
- Dim i As Long
- For i = 1 to 65536
- If Cells(i, j).Value = 0
- Rows(i).Hidden = True
- Else
- Rows(i).Hidden = False
- End If
- Next i
- End Sub
ICQ: 308-534-060
- Sub HideZeros(j As Long ) ‘j — номер столбца для проверки
- Dim i As Long
- For i = 1 to 65536
- If Cells(i, j).Value = 0 Or Cells(i, j).Value = Empty
- Rows(i).Hidden = True
- Else
- Rows(i).Hidden = False
- End If
- Next i
- End Sub
Вызывать из другой подпрограммы или обработчика (пример для 1-го столбца):
- Call HideZeros(1)
почему-то проверяется исключительно A1 и при этом скрывается другая — третья стрка.
— для примера
Почему мы это делаем в событии Worksheet_SelectionChange?
— это стандартное событие листа, можно использовать другое. Почему нет))
(ByVal Target As Range)
— согласен. ненужно.
ICQ: 308-534-060
- Sub hidZ( ByVal C As Byte )
- Dim Rn As Range
- Dim R As Long
- Set Rn = ActiveSheet.UsedRange
- For R = Rn(1).Row To Rn(Rn.Count).Row
- If Cells(R, C) = 0 And Cells(R, C) <> «» Then ‘скрыть только 0
- ‘If Cells(R, C) = «» Then ‘скрыть только «»
- ‘If Cells(R, C) = 0 Or Cells(R, C) = «» Then ‘скрыть 0 и «»
- Rows(R).Hidden = True
- End If
- Next R
- Range(Cells(R, 1), Cells(65536, 256)).RowHeight = 0 ‘если надо скрыть строки ниже занятой области
- End Sub