Страницы: 1
RSS
Скрытие диапазона, если ячейка в нем не отвечает условиям
 
Добрый день!
В макросах пока не сильна, пытаюсь научиться. Есть такой:
Код
Sub Макрос()
 If [b1213] = 0 Then
 Rows("1209:1238" ;) .Hidden = True
  End If
End Sub

А хочу чтобы был цикл и скрываемые ячейки были прописаны через сдвиг диапазона. Сама пока не могу понять как этого добиться.
Проверяемая ячейка всегда в столбце b. начиная с b4 шаг 31. 4,35, 66 и т.д до b1213
Диапазон, который надо скрыть, если проверяемая ячейка не заполнена, -3,27. Т.е. на три строки вверх и на 27 вниз.
Буду признательная за помощь.
 
файла нет. проверить не на чем...
как-то так:
Код
sub x()
  for i=4 to 1213 step 31
    if cells(i,"b")=0 then rows((i-3) & ":" & (i+27)).hidden=true
  next
end sub
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Спасибо преогромное. все работает
 
офф
Код
cells(i,"b")

ikki, то что в Cells можно указывать строку или столбец названием в кавычках "..." строки и/или столбца - не знал. Вот за это  сенкс! (:
Но хотел спросить другое: почему в Range сначала столбец потом строка: "А1", а в Cells наоборот - строка сначала, потом столбец? Правило "морского боя": -"А один"? -Убит.
Удивление есть начало познания © Surprise me!
И да пребудет с нами сила ВПР.
 
почему в Excel есть два вида (стиля) ссылок - A1 и R1C1?
в основном - дело привычки, хотя R1C1 иногда удобнее.
думаю, что с Range и Cells ситуция аналогичная.
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
Страницы: 1
Читают тему
Наверх