Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Скрыть строки без посещений с возможностью отображения - Страница 2 - Мир MS Excel

Старая форма входа
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Скрыть строки без посещений с возможностью отображения (Формулы/Formulas)
Скрыть строки без посещений с возможностью отображения
Nic70y Дата: Вторник, 01.02.2022, 15:17 | Сообщение № 21
Группа: Друзья
Ранг: Экселист
Сообщений: 8709
Репутация: 2260 ±
Замечаний: 0% ±

Excel 2010
так:
[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    a = Target.Column
    b = Target.Interior.Color
    c = Target.Row
    s = Application.Match("ИТОГО", Range("b" & c + 1 & ":b127999"), 0)
    t = Application.IsNumber(s)
    If t Then
        u = s + c
    Else
        u = Cells(Rows.Count, "e").End(xlUp).Row
    End If
    If a = 1 And b = 65535 Then
        For x = c + 1 To u
            y = Range("e" & x).Value
            If y = "" Then Rows(x).EntireRow.Hidden = True
        Next
    End If
    If a = 7 Then Rows(c + 1 & ":" & u).EntireRow.Hidden = False
    Cancel = True
End Sub
[/vba]наверное


ЮMoney 41001841029809

Сообщение отредактировал Nic70y - Вторник, 01.02.2022, 16:04
 
Ответить
Сообщениетак:
[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    a = Target.Column
    b = Target.Interior.Color
    c = Target.Row
    s = Application.Match("ИТОГО", Range("b" & c + 1 & ":b127999"), 0)
    t = Application.IsNumber(s)
    If t Then
        u = s + c
    Else
        u = Cells(Rows.Count, "e").End(xlUp).Row
    End If
    If a = 1 And b = 65535 Then
        For x = c + 1 To u
            y = Range("e" & x).Value
            If y = "" Then Rows(x).EntireRow.Hidden = True
        Next
    End If
    If a = 7 Then Rows(c + 1 & ":" & u).EntireRow.Hidden = False
    Cancel = True
End Sub
[/vba]наверное

Автор - Nic70y
Дата добавления - 01.02.2022 в 15:17
Смольный Дата: Вторник, 01.02.2022, 15:54 | Сообщение № 22
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Nic70y, почти, в файле добавил строки, если возможно сделать, чтоб строки скрывались в выбранных блоках. Сейчас при нажатии на А9 скрываются все пустые строки до строки Итого.
К сообщению приложен файл: 1794635.xlsm (74.5 Kb)


Сообщение отредактировал Смольный - Вторник, 01.02.2022, 16:04
 
Ответить
СообщениеNic70y, почти, в файле добавил строки, если возможно сделать, чтоб строки скрывались в выбранных блоках. Сейчас при нажатии на А9 скрываются все пустые строки до строки Итого.

Автор - Смольный
Дата добавления - 01.02.2022 в 15:54
Nic70y Дата: Вторник, 01.02.2022, 16:04 | Сообщение № 23
Группа: Друзья
Ранг: Экселист
Сообщений: 8709
Репутация: 2260 ±
Замечаний: 0% ±

Excel 2010
s = Application.Match("ИТОГО", Range("b" & c + 1 & ":b127999"), 0)
замените на[vba]
Код
s = Application.Match("*", Range("a" & c + 1 & ":a127999"), 0) - 1
[/vba]


ЮMoney 41001841029809
 
Ответить
Сообщение
s = Application.Match("ИТОГО", Range("b" & c + 1 & ":b127999"), 0)
замените на[vba]
Код
s = Application.Match("*", Range("a" & c + 1 & ":a127999"), 0) - 1
[/vba]

Автор - Nic70y
Дата добавления - 01.02.2022 в 16:04
Смольный Дата: Вторник, 01.02.2022, 16:24 | Сообщение № 24
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Nic70y, Спасибо большое, все четко.
 
Ответить
СообщениеNic70y, Спасибо большое, все четко.

Автор - Смольный
Дата добавления - 01.02.2022 в 16:24
Смольный Дата: Вторник, 01.02.2022, 16:42 | Сообщение № 25
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Nic70y, Может это уже перебор, но все таки спрошу, а вдруг возможно. Можно ли сделать так, чтоб в столбце А после скрытия пустых строк, подсчет шел только оставшихся?
 
Ответить
СообщениеNic70y, Может это уже перебор, но все таки спрошу, а вдруг возможно. Можно ли сделать так, чтоб в столбце А после скрытия пустых строк, подсчет шел только оставшихся?

Автор - Смольный
Дата добавления - 01.02.2022 в 16:42
Nic70y Дата: Среда, 02.02.2022, 08:26 | Сообщение № 26
Группа: Друзья
Ранг: Экселист
Сообщений: 8709
Репутация: 2260 ±
Замечаний: 0% ±

Excel 2010
Смольный, не заморачивался, записал формулы рекордером
[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    a = Target.Column
    b = Target.Interior.Color
    c = Target.Row
    s = Application.Match("*", Range("a" & c + 1 & ":a127999"), 0) - 1
    t = Application.IsNumber(s)
    If t Then
        u = s + c
    Else
        u = Cells(Rows.Count, "e").End(xlUp).Row - 1
    End If
    If a = 1 And b = 65535 Then
        For x = c + 1 To u
            y = Range("e" & x).Value
            If y = "" Then Rows(x).EntireRow.Hidden = True
        Next
        Range("a" & c + 1 & ":a" & u).FormulaR1C1 = "=IF(RC[4],MAX(R9C:R[-1]C)+1,0)"
    End If
    If a = 7 And b = 65535 Then
        Rows(c + 1 & ":" & u).EntireRow.Hidden = False
        Range("a" & c + 1 & ":a" & u).FormulaR1C1 = "=MAX(R9C:R[-1]C)+1"
    End If
    Cancel = True
End Sub
[/vba]
К сообщению приложен файл: 97.xlsm (71.7 Kb)


ЮMoney 41001841029809

Сообщение отредактировал Nic70y - Среда, 02.02.2022, 09:07
 
Ответить
СообщениеСмольный, не заморачивался, записал формулы рекордером
[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    a = Target.Column
    b = Target.Interior.Color
    c = Target.Row
    s = Application.Match("*", Range("a" & c + 1 & ":a127999"), 0) - 1
    t = Application.IsNumber(s)
    If t Then
        u = s + c
    Else
        u = Cells(Rows.Count, "e").End(xlUp).Row - 1
    End If
    If a = 1 And b = 65535 Then
        For x = c + 1 To u
            y = Range("e" & x).Value
            If y = "" Then Rows(x).EntireRow.Hidden = True
        Next
        Range("a" & c + 1 & ":a" & u).FormulaR1C1 = "=IF(RC[4],MAX(R9C:R[-1]C)+1,0)"
    End If
    If a = 7 And b = 65535 Then
        Rows(c + 1 & ":" & u).EntireRow.Hidden = False
        Range("a" & c + 1 & ":a" & u).FormulaR1C1 = "=MAX(R9C:R[-1]C)+1"
    End If
    Cancel = True
End Sub
[/vba]

Автор - Nic70y
Дата добавления - 02.02.2022 в 08:26
Смольный Дата: Среда, 02.02.2022, 09:10 | Сообщение № 27
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Nic70y, спасибо, Вы волшебник
 
Ответить
СообщениеNic70y, спасибо, Вы волшебник

Автор - Смольный
Дата добавления - 02.02.2022 в 09:10
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Скрыть строки без посещений с возможностью отображения (Формулы/Formulas)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!