powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Скрыть пустые ячейки VBA
20 сообщений из 20, страница 1 из 1
Скрыть пустые ячейки VBA
    #33784259
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите как с помощью VBA скрыть строки где в одном столбце может оказаться пустое значение
пример:

1 2 3
4 5
6 7 8

должно остаться:
1 2 3
6 7 8
я понимаю, что это можно сделать автофильтром или расширенным фильтром, однако у меня в данные ячейки из другого листа постоянно подтягиваются различные данные и наличие пустых ячеек меняется:
могут быть различные варианты:
1 2
3 4 5
6 7
или
1 2 3
4 5 6
7 8 9
и мне необходимо, чтобы я постоянно видел только те строчки, в которых в третьем столбце есть данные
ни автофильтром ни расширенным фильтром я этого добиться не смог....
думаю для тех, кто шарит в энтом деле (в смысле VBA) такая задачка проблем не составит, но для меня это большая проблема, т.к. в VBA я даже не чайник,а заварка :)
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33784435
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот как раз автофильтром это и надо делать.

Можно еще для пущего веселья сделать макрос типа:
Код: plaintext
1.
2.
Private Sub Worksheet_Activate()
    UsedRange.AutoFilter Field:= 3 , Criteria1:="<>"
End Sub
Тогда каждый раз при переключении обратно в лист автофильтр будет автоматически обновляться.
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33785075
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я здесь набросал на скорую руку файлик, типа того, где мне необходимо фильтрация.

мне необходимо, чтобы при выборе покупателя я видел только строки, которые относятся к данному покупателю. (те, где в столбце С выделяются ячейки голубым цветом).
не знаю может быть это и не возможно..... но оччччень нужно...
пожалуйста если возможно, помогите
С уважением.
Дмитрий
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33785076
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чтой-то не прикрепилось
пробую еще раз
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33785077
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
White OwlВот как раз автофильтром это и надо делать.

Можно еще для пущего веселья сделать макрос типа:
Код: plaintext
1.
2.
Private Sub Worksheet_Activate()
    UsedRange.AutoFilter Field:= 3 , Criteria1:="<>"
End Sub
Тогда каждый раз при переключении обратно в лист автофильтр будет автоматически обновляться.

Спасибо, это работает, приму к сведению, но только возможно я не правильно выразился и конечный результат немного не такой.
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33786205
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ, подскажите, кто - нибудь????!!!!!!
Пожалуйста, очень срочно нужно!!!!
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33786469
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотри исходный текст листа "БД ИЗМ ПРОД"
;)
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33790045
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Старик!
Преклоняюсь!
Спасибо огромное!
Все рабтает, просто супер!
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33790400
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вопросик
если я немного поменял код, а именно:
был:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 And Target.Column = 2 And Target.Row = 3 Then
Rows("6:6").EntireRow.Hidden = Range("C6") = 0
Rows("7:7").EntireRow.Hidden = Range("C7") = 0
Rows("8:8").EntireRow.Hidden = Range("C8") = 0
End If
End Sub

стал:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 And Target.Column = 2 And Target.Row = 3 Then
Rows("6:6").EntireRow.Hidden = Range("D6") = 0
Rows("7:7").EntireRow.Hidden = Range("D7") = 0
Rows("8:8").EntireRow.Hidden = Range("D8") = 0
End If
End Sub

у меня ничего не выходит.... ((
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33791428
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если изменил C на D и Цена стала в D, то всё должно работать.

Вот, я открыл 123(2)_100g;
Добавил на лист БД ИЗМ ПРОД столбец между B и C (т.е. C стал D);
Зашел в прогу и изменил C на D в строчках Range("D6") = 0...D7...D8
Закрыл VBA;
Щёлкаю список в B3, сравниваю результат со Справочник -> Всё работает.

Может выложишь измененный файлик?
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33791447
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, что отозвался :)
выкладываю...
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33791589
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понятно.

Там есть IF вот такой:

If Target.Count = 1 And Target.Column = 2 And Target.Row = 3 Then
Другими словами он проверяет значения и скрывает ячейки только в том случае если:
Target.Count = 1 (количество измененных выделенных ячеек равно 1, т.е. одна)
Target.Column = 2 (эта ячейка находится во втором столбце!!!!!!!!)
Target.Row = 3 (эта ячейка находится во второй строке)

;)
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33791606
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тоисть в третьей строке (Target.Row = 3)
на листе БД ИЗМ ПРОД
:)
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33792964
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, сейчас попробую
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #33794100
d_oshust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все работает, спасибо тебе огромное.
У меня были мысли, что где-то в этой строке, но я не разобрался раньше, теперь разобрался....
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Скрыть пустые ячейки VBA
    #34726363
valakin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите кто знает, почему не работает. Хочу скрыть в документе нулевые строки по условию.

Dim j As String
For h1 = 0 To 0
For g1 = 1 To 105

j = Str(h1 * 7 + 34 + g1) + ":" + Str(h1 * 7 + 34 + g1)
j = Str(h1 * 7 + 34 + g1) + ":" + Str(h1 * 7 + 34 + g1)


If Cells(h1 * 7 + 34 + g1, 5) = 0 And Cells(h1 * 7 + 34 + g1, 11) = 0 And Cells(h1 * 7 + 34 + g1, 12) = 0 Then
MsgBox (j)
Rows(j).Select
Selection.EntireRow.Hidden = True
End If

Next g1
Next h1
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #34728125
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Замени Str на CStr.
А то у тебя в j попадают лишние пробелы, а из-за этого ошибается Rows(j).Select
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Скрыть пустые ячейки VBA
    #36365855
Стас_55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как в VBA сделать, чтобы проверяя матрицу, лист обновлялся, а то когда я подставляю число, матрица заполняется цифрами, подстовляя второй и последущие раз- она не изменяется? Мож нат что-то дописать надо? помогите пожалуйста!!!
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #36365884
Стас_55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как в VBA сделать, чтобы проверяя матрицу, лист обновлялся, а то когда я подставляю число, матрица заполняется цифрами, подстовляя второй и последущие раз- она не изменяется? Мож нат что-то дописать надо? помогите пожалуйста!!!
...
Рейтинг: 0 / 0
Скрыть пустые ячейки VBA
    #36366105
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
Calculate
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Скрыть пустые ячейки VBA
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]