Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Address(0, 0) <> "A1" Then Exit Sub With Range("A13:A34,A38:A60,A64:A78,A82:A85") .EntireRow.Hidden = False .SpecialCells(xlCellTypeFormulas, 4).EntireRow.Hidden = True End With End Sub
[/vba]
AVI, привет если в формулах в кач-ве аргумента ЕСЛИОШИБКА исп-ть Истина
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Address(0, 0) <> "A1" Then Exit Sub With Range("A13:A34,A38:A60,A64:A78,A82:A85") .EntireRow.Hidden = False .SpecialCells(xlCellTypeFormulas, 4).EntireRow.Hidden = True End With End Sub
[/vba] имеется в виду, что скрываются строки с формулами, которые возвращают логическое выражение (Ложь или Истина). А формулы, возвращающие, например, текст - не скрываются. поэтому напишите такую формулу в В10-В61
[/vba] имеется в виду, что скрываются строки с формулами, которые возвращают логическое выражение (Ложь или Истина). А формулы, возвращающие, например, текст - не скрываются. поэтому напишите такую формулу в В10-В61
Добрый день.Вариант без изменения(добавления)формул [vba]
Код
[code]Private Sub Worksheet_Change(ByVal Target As Range) Dim LastRow As Long, i As Long Application.ScreenUpdating = False Application.EnableEvents = False LastRow = Cells(Rows.Count, 1).End(xlUp).Row For i = LastRow To 10 Step -1 If Rows(i).Hidden = True Then Rows.AutoFit If Cells(i, 1) = 0 Or Cells(i, 1) = "" Then Rows(i).Hidden = True Next i Application.EnableEvents = True Application.ScreenUpdating = True End Sub
[/code][/vba]
Добрый день.Вариант без изменения(добавления)формул [vba]
Код
[code]Private Sub Worksheet_Change(ByVal Target As Range) Dim LastRow As Long, i As Long Application.ScreenUpdating = False Application.EnableEvents = False LastRow = Cells(Rows.Count, 1).End(xlUp).Row For i = LastRow To 10 Step -1 If Rows(i).Hidden = True Then Rows.AutoFit If Cells(i, 1) = 0 Or Cells(i, 1) = "" Then Rows(i).Hidden = True Next i Application.EnableEvents = True Application.ScreenUpdating = True End Sub