1 / 1 / 1
Регистрация: 16.12.2015
Сообщений: 85
1

Скрыть строки по условию

04.05.2016, 21:15. Показов 11487. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер!

Возникла такая проблема, необходимо часто скрывать строки в файле, в зависимости от следующего условия: Если во всех трех ячейках столбцов с F-H пусто, тогда полностью скрыть данную строку. Искал в инете с подобными условиями найти похожих не смог. Прошу либо помочь с данным макросом, либо скинуть приближенные к данному решения.
Вложения
Тип файла: zip прбс.zip (165.2 Кб, 14 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.05.2016, 21:15
Ответы с готовыми решениями:

Скрыть строки по условию
Здравствуйте господа-товарищи! у меня стоит следующая задача: имеется файл эксель с N...

Скрыть/раскрытие строки по условию
Добрый день, уважаемые форумчане. Прошу помочь со следующей задачей. Необходимо написать...

Скрыть столбцы по условию
Уважаемые знатоки, подскажите пожалуйста. Sub Hide() Dim cell As Range ...

Скрыть часть строк по условию?
КАк можно сделать невидимыми строки, которые содержат в одной из своих ячеек определенное значение?

6
1 / 1 / 1
Регистрация: 16.12.2015
Сообщений: 85
04.05.2016, 21:29  [ТС] 2
Есть такой вариант, но он скрывает только по одному столбцу.

Visual Basic
1
2
3
4
5
6
7
8
9
Sub test()
    Dim i&
    For i = 1 To 100
        If Range("F" & i).Value = "" Then
            Rows(i).EntireRow.Hidden = True
            Else: Rows(i).EntireRow.Hidden = False'
        End If
    Next
End Sub
0
45 / 45 / 15
Регистрация: 14.04.2016
Сообщений: 128
04.05.2016, 21:44 3
Пробуйте
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Sub tt()
    Dim arr(), i As Long
    With Application
        .ScreenUpdating = False
        .Calculation = xlCalculationManual
        arr = Range("f5:H" & Cells(Rows.Count, "B").End(xlUp).Row - 3)
        For i = 1 To UBound(arr)
            If Len(arr(i, 1)) + Len(arr(i, 2)) + Len(arr(i, 3)) = 0 Then Rows(i + 4).Hidden = True
        Next
        .ScreenUpdating = False
        .Calculation = xlCalculationAutomatic
    End With
End Sub
0
1 / 1 / 1
Регистрация: 16.12.2015
Сообщений: 85
04.05.2016, 21:46  [ТС] 4
МВТ, Спасибо за помощь, уже вроде получилось, вот так вот сделать
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
   
Dim j As Integer
   
   ActiveSheet.Cells.EntireRow.Hidden = False
   With ActiveSheet
      For j = 5 To 286
         If .Cells(j, 6).Text = "" And (.Cells(j, 7).Text = "" And .Cells(j, 8).Text = "") Then
            .Cells(j, 6).EntireRow.Hidden = True
         End If
      Next j
   End With
End Sub
0
85 / 82 / 31
Регистрация: 13.10.2014
Сообщений: 167
07.05.2016, 03:29 5
Без видимого цикла:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Sub tt_1()
'With Application: .ScreenUpdating = False: .Calculation = xlCalculationManual
Rows.Hidden = False
On Error GoTo m100
r = Cells(Rows.Count, 1).End(xlUp).Row
Range(Cells(5, 6), Cells(r, 6)).SpecialCells(4).Offset(, 1) _
.SpecialCells(4).Offset(, 1).SpecialCells(4).Rows.Hidden = True
'.ScreenUpdating = False: .Calculation = xlCalculationAutomatic: End With
Exit Sub
m100: MsgBox "Ничего не скрыто тчк"
End Sub
0
0 / 0 / 0
Регистрация: 04.03.2018
Сообщений: 40
01.12.2019, 09:23 6
k61, никак не могу найти информацию, что означает .SpecialCells(4) в вашем примере ?

пытаюсь приладить под свои задачи, но не пойму никак, инфы тоже не нагуглил.
и как описано что именно при пустых ячейках скрывать строку ?
как задать диапазон строк для отслеживания условия - разобрался.
Спасибо!
0
85 / 82 / 31
Регистрация: 13.10.2014
Сообщений: 167
04.12.2019, 04:34 7
Из справки.
Вложения
Тип файла: xls xlCellType_xlSpecialCellsValue.xls (14.5 Кб, 44 просмотров)
0
04.12.2019, 04:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.12.2019, 04:34
Помогаю со студенческими работами здесь

Скрыть строки по условию в форме
Здравствуйте уважаемые. Как в ленточной подчиненной форме скрыть т.е отфильтровать те строки в...

DataGrid. Скрыть/показать строки по условию
На прикреплённой картинке имеется DataGrid, который содержит 2 столбца, первый - название...

Скрыть столбец по условию
Добрый день. Подскажите, возможно ли скрыть столбец по определенному условию: CASE ...

Скрыть див по условию if
Здравствуйте Помогите, пожалуйста, скрыть див по условию: в див c классом car динамически...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru