определить в цикле при каких значениях, удовлетворяющих условию задать определённую высоту. А после цикла задать эту высоту
Думаю вот тут я это описал.
Хочу сделать так, чтоб в цикле определялся набор тех значений которые удовлетворяют условию, а после цикла, выполнялось это условие. Допустим, в ячейке 1 данного диапазона стоит значение 100, в ячейке два 70, в ячейке три 78, в ячейке четыре 105,и т.д. и т.п. Так вот, в зависимости от заданного условия. мы понимает что в набор 1 мы должны записать при значении lr=1 и 4, т.к. они больше 85. А в набор 2 мы должны записать lr=2 и 3, т.к. они меньше 85. По окончанию цикла у меня в наборе 1, допустим значения 1,4, 5,7,8,15 и т.д. всего 100 шт.(это к примеру), а в наборе 2 значения 2,3,6,9,10, и т.д.. Вот. Цикл прошел, определил при каких значениях, в данном диапазоне, эти значения определить в набор 1 или же в набор 2. И вот после цикла разом всем строкам из набора 1 задать высоту= 28, а из набора 2, задать высоту всем строкам= 14. Сейчас макрос такой что он задает высоту для каждой строки по отдельности, при прохождении цикла в котором условие. А нужно чтоб разом это делал,
Нашел в интернете. Вот этот код делает очень похожую задачу. Он ищет в диапазоне "B45:B94", пустую ячейку. И разом скрывает только те что удовлетворяют условию. Но как бы я не извращался над этим кодом, под мою задачу. Вечно всякие ошибки.
Код |
---|
Sub skritie()
Dim ra As Range, delra As Range, ТекстДляПоиска As String
ТекстДляПоиска = "" ' скрываем строки с таким текстом
'перебираем все строки в используемом диапазоне листа
For Each ra In Range("B45:B94").Rows
'если в строке найден искомый текст
If Not ra.Find(ТекстДляПоиска, , xlValues, xlPart) Is Nothing Then
'добавляем строку в диапазон для скрытия
If delra Is Nothing Then Set delra = ra Else Set delra = Union(delra, ra)
End If
Next
'если подходящие строки найдены - скрываем их
If Not delra Is Nothing Then delra.EntireRow.Hidden = True
End Sub |