Страницы: 1
RSS
Ширина столбца по условию, содержания текста
 
В таблице необходимо применить ширину столбца, в зависимости от содержания заголовка, то есть если в ячейках B1 и E1 содержится «стакан» ширина равна 10, если B1, F1 содержит «Железный», то 15
 
Такое только макросом,  а если ничего не содержится ?
Код
Sub ddd()
Dim c As Long
Dim lcol As Long
lcol = Cells(1, Columns.Count).End(xlToLeft).Column
For c = 1 To lcol
    If Cells(1, c) Like "*стакан*" Then
        Columns(c).ColumnWidth = 10
    ElseIf Cells(1, c) Like "*Железный*" Then
        Columns(c).ColumnWidth = 15
    End If
Next c
End Sub
Изменено: Mershik - 19.09.2020 12:12:17
Не бойтесь совершенства. Вам его не достичь.
 
Цитата
Mershik написал:
а если ничего не содержится ?
, оставить как есть, в принципе, как реализовано у вас. Спасибо!
Один вопрос: А где вы задаете с какой строки нужно начинать действие?
Изменено: Your soul - 19.09.2020 12:54:15
 
Цитата
Your soul написал:
с какой строки
а не все равно с какой строки, если цикл по столбцам?
Цитата
Mershik написал:
For c = 1 To lcol
вот цикл. От 1-го столбца до последнего заполненного в первой строке. Из этого следует, что последний заполненный столбец определяется по 1-ой строке. Вот здесь:
Цитата
Mershik написал:
lcol = Cells(1, Columns.Count).End(xlToLeft).Column
подробнее: Как определить последнюю ячейку на листе через VBA?
там и про столбцы есть.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дмитрий(The_Prist) Щербаков,
Спасибо!
Изменено: Your soul - 19.09.2020 13:10:15
 
Mershik,
Спасибо!
Страницы: 1
Наверх