Вставить разрыв строки в обернутой ячейке с помощью кода - PullRequest
32 голосов
/ 28 марта 2012

Можно ли вставить перенос строки в обернутую ячейку через код VBA? (аналогично Alt - Введите при вводе данных вручную)

Я установил для свойства текста обтекания ячейки значение True с помощью кода VBA и вставляю в него данные также с помощью кода VBA.

Ответы [ 4 ]

61 голосов
/ 28 марта 2012

Да. Эквивалент VBA Alt Введите для использования символа перевода строки:

ActiveCell.Value = "I am a " & Chr(10) & "test"

Обратите внимание, что это автоматически устанавливает WrapText в True.

Proof

Sub test()
Dim c As Range
Set c = ActiveCell
c.WrapText = False
MsgBox "Activcell WrapText is " & c.WrapText
c.Value = "I am a " & Chr(10) & "test"
MsgBox "Activcell WrapText is " & c.WrapText
End Sub
14 голосов
/ 28 марта 2012

Вы также можете использовать vbCrLf, что соответствует Chr(13) & Chr(10).

0 голосов
/ 09 ноября 2017

Просто сделайте Ctrl + Введите внутри текстового поля

0 голосов
/ 24 мая 2016

Да, есть два способа добавить перевод строки:

  1. Использовать существующую функцию из VBA vbCrLf в строке, в которую вы хотите добавить перевод строки, как таковой:

    Dim text As String

    text = "Hello" & vbCrLf & "World!"

    Рабочие листы (1). Ячейки (1, 1) = текст

  2. Используйте функцию Chr() и передайте символы ASCII 13 и 10, чтобы добавить перевод строки, как показано ниже:

    Затемнить текст в виде строки

    text = "Привет" & Chr (13) и Chr (10) & "World!"

    Рабочие листы (1). Ячейки (1, 1) = текст

В обоих случаях у вас будет одинаковый выход в ячейке (1,1) или A1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...