У меня есть Excel-лист со значениями в столбце D. Я хотел бы установить высоту строки относительно значения ячейки D каждой строки. Значения в D являются небольшими% -значениями, такими как 0,0593%, за исключением первого (D4 = 31%) и последнего (D92 = 40%)Excel VBA rowheigt от значения в диапазоне
Чтобы получить небольшие значения на разумной высоте, я хотел бы умножить их с 10'000 - но возникает проблема с максимальной высотой 409.
У меня есть сценарий, который работает до тех пор, пока он не достигнет высоких значений, поэтому я попробовал формулу if. Но, честно говоря, у меня нет идеи, что я здесь делаю ... Я скопировал ее вместе.
Таким образом, проблемы: работа только в диапазоне D5-D91, и если значение должно превышать 409, дайте ему что-то вроде 15px.
Thanx для вашей помощи!
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i As Long
For i = 4 To Cells(Rows.Count, 1).End(xlUp).Row - 1
With Cells(i, 4)
If .Cells(i, 4).Value * 10000 > 409 Then
Rows(i).RowHeight = 12
Else
Rows(i).RowHeight = Cells(i, 4).Value * 10000
End If
End With
Next i
End Sub
Почему вы используете 'Worksheet_SelectionChange' событие, когда это может быть достигнуто с помощью процедуры? Также «Ячейки (i, 4). Значение * 10000 выглядит странным bcoz, если столбец D имеет неправильное значение, он может выйти из строя. – Santosh
Как я уже сказал, я скопировал этот материал вместе и абсолютно не уверен в этом. И мне нужен только диапазон строк D. Так что значение должно определить. быть 0.xxxx%. Я знаю, что в скрипте есть ошибки, но решения помогут ... –