Форум по VBA, Excel и Word

VBA, Excel => VBA, макросы в Excel => Тема начата: Ivan от 07 ноября 2018, 02:57

Название: VBA Макросы: Как перенести выбранный элемент из listbox в textbox в новую строку?
Отправлено: Ivan от 07 ноября 2018, 02:57
Как перенести выбранный элемент из listbox в textbox? Юзер щёлкает два раза в листбоксе по выбранному элементу, этот элемент должен скопироваться в текстбокс на новую строку.

Выбранный элемент из листбокса я переношу в текстбокс таким способом. Данные вставляются в одну строку, а нужно, чтобы было несколько строк.

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1.Text = TextBox1.Text + ListBox1.Text
End Sub

[вложение удалено администратором]
Название: Re: VBA Макросы: Как перенести выбранный элемент из listbox в textbox в новую строку?
Отправлено: Администратор от 07 ноября 2018, 14:07
Копирование выделенной строки из листбокса в текстбокс:

Код
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

    Dim text As String
   
    ' Копирование текста из текстбокса в переменную, чтобы несколько раз
        ' не обращаться к текстбоксу. Может быть так будет удобнее.
    text = Me.TextBox1.text
   
    ' Если в текстбоксе есть данные. В этом случае добавляем после имеющегося текста два символа,
        ' чтобы текст перешёл на новую строку.
    If text <> "" Then
        Me.TextBox1.text = text & vbCrLf & Me.ListBox1.text
    ' Если в текстбоксе нет данных.
    Else
        Me.TextBox1.text = Me.ListBox1.text
    End If
   
End Sub
[свернуть]
Название: Re: VBA Макросы: Как перенести выбранный элемент из listbox в textbox в новую строку?
Отправлено: Ivan от 07 ноября 2018, 14:40
Спасибо! Я тоже думал про знак абзаца.