Можно ли вставлять разрыв строки в обернутую ячейку через код VBA? (аналогично выполнению Alt - Enter при вводе данных вручную)
Я установил свойство text привязки ячейки к True через код VBA, и я вставляю данные в него также через код VBA.
Ответ 1
Да. Эквивалент VBA AltEnter заключается в использовании символа строки:
ActiveCell.Value = "I am a " & Chr(10) & "test"
Обратите внимание, что это автоматически устанавливает WrapText в значение True.
Доказательство:
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
Ответ 2
Вы также можете использовать vbCrLf, который соответствует Chr(13) и Chr(10).
Ответ 3
Просто сделайте Ctrl + Enter внутри текстового поля
Ответ 4
Да есть два способа добавить фид строки:
Используйте существующую функцию из VBA vbCrLf в строке, которую вы хотите добавить в фид строки:
Dim text As String
text = "Hello" и vbCrLf и "World!"
Рабочие листы (1).Cells(1, 1) = текст
Используйте функцию Chr() и передайте символы ASCII 13 и 10, чтобы добавить фид строки, как показано ниже:
Dim text As String
text = "Hello" и Chr (13) и Chr (10) и "World!"
Рабочие листы (1).Cells(1, 1) = текст
В обоих случаях вы будете иметь тот же результат в ячейке (1,1) или A1.