UserForm1.ListBox3.Clear
Do While .Cells(x, 1) <> ""
UserForm1.ListBox3.AddItem .Cells(x, 3) 'добавление в первую колонку
UserForm1.ListBox3.Column(1, UserForm1.ListBox3.ListCount - 1) = _
.Cells(x, 4) 'добавление во вторую колонку
'выставление ширины
Worksheets("Temp").Cells(1, 1) = _
Worksheets("база").Cells(x, 3) ' перенос во временную ячейку
ThisWorkbook.Worksheets("Temp").Columns(1).EntireColumn.AutoFit ' выстовление ширины во временной ячейке
If cw < Worksheets("Temp").Cells(1, 1).Width Then _
cw = Worksheets("Temp").Cells(1, 1).Width _
' проверка если ширина временной ячейки больше переменной то _
заганяю ширину в переменную
Worksheets("Temp").Cells(1, 1) = _
Worksheets("база").Cells(x, 4) ' перенос во временную ячейку
Worksheets("Temp").Columns(1).EntireColumn.AutoFit ' выстовление ширины во временной ячейке
If cw1 < Worksheets("Temp").Cells(1, 1).Width Then _
cw1 = Worksheets("Temp").Cells(1, 1).Width
' проверка если ширина временной ячейки больше переменной то _
заганяю ширину в переменную
End If
x = x + 1
Loop
End With
End If
'выставление ширины в листбоксе
cw3 = cw & ";" & cw1 & ";"
UserForm1.ListBox3.ColumnWidths = cw3
VBA: столбцы в listbox'е
Проблема такая: есть listbox, в котором 9 колонок. Как сделать, чтобы текст в каждой колонке не уходил за ее края, а перенасился вниз, какбы "раздвигая" строчку? Если нет спец. команды, то какие еще могут быть решения?? Может кто сталкивался...
Проблема такая: есть listbox, в котором 9 колонок. Как сделать, чтобы текст в каждой колонке не уходил за ее края, а перенасился вниз, какбы "раздвигая" строчку? Если нет спец. команды, то какие еще могут быть решения?? Может кто сталкивался...[/QUOTE]
У меня listbox заполняется програмно, поскольку я не нашел спец. команды для переноса строки, изпользую вот этот код для выставления нужной ширины у колонок
Код:
смысл в том, что прогоняешь все значения через временную ячейку и узнаешь их ширины, а потом выставляешь ширину колонок в листбоксе по максимальным значениям