Sub test() Dim i& For i = 1 To 100 If Range("A" & i).Value = "" Then Rows(i).EntireRow.Hidden = True Else: Rows(i).EntireRow.Hidden = False' End If Next End Sub
[/vba]
пусто или 0? если пусто [vba]
Код
Sub test() Dim i& For i = 1 To 100 If Range("A" & i).Value = "" Then Rows(i).EntireRow.Hidden = True Else: Rows(i).EntireRow.Hidden = False' End If Next End Sub
как пытающийся разобраться новичок в VBA, полагаю что если надо скрыть ячейки со значением "0", то строка выглядит так: If Range("A" & i).Value = "0" Then. вопрос вот в чем - если листов несколько, и в каждом надо скрыть строки с нулями, значащие столбцы в которых не совпадают, т е в листе 1 напр. надо скрывать строки с нулями в столбце А, в листе 2 - в столбце С и т.д., видимо куда-то нужно привязать функцию с активной ячейкой, но не знаю куда. кроме того диапазон обработки не должен ограничиваться 100 строками, это опять же в каждом листе свое определенное кол-во записей для обработки. можно ли в этом случае сотворить что-то универсальное для всей книги целиком, например при нажатии пары клавиш. надеюсь понятно написала. заранее огромное спасибо за помощь.
как пытающийся разобраться новичок в VBA, полагаю что если надо скрыть ячейки со значением "0", то строка выглядит так: If Range("A" & i).Value = "0" Then. вопрос вот в чем - если листов несколько, и в каждом надо скрыть строки с нулями, значащие столбцы в которых не совпадают, т е в листе 1 напр. надо скрывать строки с нулями в столбце А, в листе 2 - в столбце С и т.д., видимо куда-то нужно привязать функцию с активной ячейкой, но не знаю куда. кроме того диапазон обработки не должен ограничиваться 100 строками, это опять же в каждом листе свое определенное кол-во записей для обработки. можно ли в этом случае сотворить что-то универсальное для всей книги целиком, например при нажатии пары клавиш. надеюсь понятно написала. заранее огромное спасибо за помощь.forirish
пусто или 0? если пусто Sub test() Dim i& For i = 1 To 100 If Range("A" & i).Value = "" Then Rows(i).EntireRow.Hidden = True Else: Rows(i).EntireRow.Hidden = False' End If Next End Sub
все работает отлично! Спасибо! У меня еще вопрос! Нужно что программа просматривала 3 столбца и в строке и если они все пустые, то скрывала всю строку, а если хотя бы одна ячейка заполнена, то оставляла всю строчку. Подскажите пожалуйста как это можно сделать. [moder]Создайте свою тему, приложите файл с примером в соответствии с Правилами форума. Эта тема закрыта[/moder]
пусто или 0? если пусто Sub test() Dim i& For i = 1 To 100 If Range("A" & i).Value = "" Then Rows(i).EntireRow.Hidden = True Else: Rows(i).EntireRow.Hidden = False' End If Next End Sub
все работает отлично! Спасибо! У меня еще вопрос! Нужно что программа просматривала 3 столбца и в строке и если они все пустые, то скрывала всю строку, а если хотя бы одна ячейка заполнена, то оставляла всю строчку. Подскажите пожалуйста как это можно сделать. [moder]Создайте свою тему, приложите файл с примером в соответствии с Правилами форума. Эта тема закрыта[/moder]temaram