Страницы: 1
RSS
таблица с автоскрываемыми строками
 
Здравствуйте, прошу Вас подсказать что я делаю ни так:
При выборе код.производителя у меня все заполняется автоматом, я хочу сделать чтоб по умолчанию показывали только 2 строчки в накладной и при вводе в  1,2 строки  код. производителя  открывалась следующая 3 пустая строка и т. д.

вот код. но к сож он закрывает его полностью
Код
Sub resiz()
    Application.ScreenUpdating = False
           Z = 1
           For i = 9 To 36
               If Range("h" & i).Value = 0 Then
          Z = i
          Exit For
          End If
          Next
          Rows("08:" & Z).EntireRow.AutoFit
          Rows(Z & ": 36").RowHeight = 0
     Application.ScreenUpdating = True  
End Sub
------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
        Dim rng As Range: Set rng = [А09:А36]
        If Not Intersect(rng, Target) Is Nothing Then Resiz
    Application.EnableEvents = True
End Sub
 
вообще то для скрытия нужно  EntireRow.Hidden = True
да перед скрытием желательно все открыть сначала.
08 и 09 так не пишутся строки 8 и 9.
 
да спец 0 поставил чтоб накладная не закрывалась при открытие примера , а то у меня полностью закрывается и показывает только итоги.
 
В модуль листа:
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A9:A36")) Is Nothing Then
       Dim lr As Long
       lr = Target.Row
       Rows(lr & ":50").EntireRow.Hidden = False
       Rows(lr + 2 & ":36").EntireRow.Hidden = True
    End If
End Sub
И Ваш макрос "resiz" не нужен
 
Спасибо  _Igor_61 !  выручили!
Страницы: 1
Наверх