Msgbox vba excel перевод строки

Home / VBA / How to Add a New Line (Carriage Return) in a String in VBA

In VBA, there are three different (constants) to add a line break.

  1. vbNewLine
  2. vbCrLf
  3. vbLf

vbNewLine

vbNewLine inserts a newline character that enters a new line. In the below line of code, you have two strings combined by using it.

Range("A1") = "Line1" & vbNewLine & "Line2"

When you run this macro, it returns the string in two lines.

It returns the character 13 and 10 (Chr(13) + Chr(10)). You can use a code in the following way as well to get the same result.

Range("A1") = "Line1" & Chr(13) & Chr(10) & "Line2"

But when you use vbNewLine you don’t need to use CHAR function.

vbCrLf

vbCrLf constant stands for Carriage Return and Line feed, which means Cr moves the cursor to the starting of the line, and Lf moves the cursor down to the next line.

When you use vbCrLf within two string or values, like, you have in the following code, it inserts a new line.

Range("A1") = "Line1" & vbCrLf & "Line2"

vbLf

vbLf constant stands for line feed character, and when you use it within two strings, it returns line feed character that adds a new line for the second string.

Range("A1") = "Line1" & vbLf & "Line2"

If you want to add a new line while using the VBA MsgBox you can use any of the above three constants that we have discussed.

MsgBox "Line1" & vbNewLine & "Line2"
MsgBox "Line1" & vbCrLf & "Line2"
MsgBox "Line1" & vbLf & "Line2"

There’s also a constant vbCr that returns carriage return character that you can use to insert a new line in a message box.

MsgBox "Line1" & vbCr & "Line2"

vbCr won’t work if you want to enter a cell value until you apply wrap text to it.

Перенос части кода одного выражения VBA Excel на другую строку. Объединение нескольких операторов в одной строке. Программный перенос текста на новую строку.

Обратите внимание, что в этой статье слова «оператор» и «выражение» употребляются в одном значении. Они обозначают минимальный исполняющийся код VBA, расположенный в одной строке.

‘Каждая строка — один

‘оператор/выражение

Dim a As Long, b As Long

a = 12

b = a + 25

Перенос части выражения на новую строку

Деление длинного оператора на части улучшит его читаемость, сделает код процедуры более наглядным и компактным, не позволит ему уходить за пределы видимого экрана справа.

Переносимые на новые строки части кода одного выражения разделяются символом нижнего подчеркивания (_), который ставится обязательно после пробела. Этот символ указывает компилятору VBA Excel, что ниже идет продолжение текущей строки.

Пример 1
Процедуры без переноса и с переносом части кода операторов:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

‘Процедура без переноса

‘кода операторов

Sub Primer_1_1()

Dim a As Long, b As Long

a = 12 * 7 15 / 5 + 36

b = a + 25 + 36 * 15 5

MsgBox b

End Sub

‘Процедура с переносом

‘кода операторов

Sub Primer_1_2()

Dim a As Long, _

b As Long

a = 12 * 7 15 _

/ 5 + 36

b = a + 25 + 36 _

* 15 5

MsgBox b

End Sub

Вы можете скопировать код Примера 1 и проверить его работоспособность. В обоих случаях информационное окно MsgBox покажет одинаковый результат.

Иногда пишут, что для переноса кода добавляется пробел с символом подчеркивания. Так легче запомнить и не забыть, что перед знаком подчеркивания обязательно должен быть пробел. Но на самом деле, как видите из примера выше, пробелы уже есть в исходном коде, и мы добавили только символы подчеркивания.

Объединение операторов в одной строке

Множество коротких выражений в коде VBA Excel можно объединить в одной строке. Для этого используется символ двоеточия с пробелом «: », который указывает компилятору, что за ним идет следующий оператор.

Пример 2
Процедуры без объединения и с объединением операторов:

‘Процедура без объединения

‘операторов

Sub Primer_2_1()

Dim a As Long, b As Long, c As Long

a = 12

b = a + 25

c = a * b

MsgBox c

End Sub

‘Процедура с объединением

‘операторов

Sub Primer_2_2()

Dim a As Long, b As Long, c As Long

a = 12: b = a + 25: c = a * b: MsgBox c

End Sub

Во втором примере, как и в первом, информационное окно MsgBox покажет одинаковый результат.

Программный перенос текста на другую строку

Для программного переноса произвольного текста на новую строку в VBA Excel используются следующие ключевые слова:

  • vbCr – возврат каретки;
  • vbLf – перевод строки;
  • vbCrLf – возврат каретки и перевод строки, аналог нажатия клавиши «Enter»;
  • vbNewLine – новая строка.

Выражения «возврат каретки» и «перевод строки» идут от механических пишущих машин (печатных машинок).

Пример 3
Проверяем работоспособность перечисленных выше ключевых слов по программному переносу текста на новые строки в ячейке и информационном окне MsgBox:

Sub Primer_3()

‘Перенос текста в ячейке

Range(«B2») = «Первая строка + vbCr» & vbCr & _

«Вторая строка + vbLf» & vbLf & _

«Третья строка + vbCrLf» & vbCrLf & _

«Четвертая строка + vbNewLine» & vbNewLine & _

«Пятая строка»

‘Перенос текста в информационном окне

MsgBox «Первая строка + vbCr» & vbCr & _

«Вторая строка + vbLf» & vbLf & _

«Третья строка + vbCrLf» & vbCrLf & _

«Четвертая строка + vbNewLine» & vbNewLine & _

«Пятая строка»

End Sub

Получился следующий результат:

Результаты программного переноса текста на новую строку в ячейке и информационном окне MsgBox

Результат четырех переносов текста на новую строку

Как видно на изображении, ключевое слово «vbCr» не сработало в ячейке для переноса текста на другую строку, хотя сработало в информационном окне MsgBox.

Ключевые слова «vbCr» и «vbLf» я использовал исключительно для ознакомления, а на практике следует применять для переноса текста на новую строку – «vbCrLf» и «vbNewLine».

109 / 56 / 1

Регистрация: 10.11.2012

Сообщений: 178

1

16.11.2012, 12:20. Показов 79029. Ответов 31


Студворк — интернет-сервис помощи студентам

Добрый день.

как вывести сообщение в MsgBox() в несколько строк. у меня весь текст в одну строчку выходит.



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

16.11.2012, 12:20

Ответы с готовыми решениями:

перенос строк
Добрый Всем день.
На форме две таблицы.Строку из табл.2 нужно перенести в тадл.1 двойным кликом….

Перенос однотипных данных из 20 файлов более 15млн строк Excel в Access
Добрый день,

Есть 15 файлов Excel. В каждом файле есть от одной до 3 вкладок. На каждой вкладке…

msgBox
добрый день.как сделать что бы при нажатии на кнопку сформировать выходило сообщение -вы…

Подобие msgbox
Вот какая замечательная вещь получается.

Каких бы размеров не было сообщение, окно с сообщением…

31

BigOblom

123 / 123 / 17

Регистрация: 30.06.2010

Сообщений: 478

16.11.2012, 12:24

2

Не знаю как в Access, в Delphi используют символ переноса строки #13. В C# n

Вот нашел

Visual Basic
1
'Первая строка' & chr(13) & 'Вторая строка'



1



sekonya

608 / 387 / 8

Регистрация: 14.04.2011

Сообщений: 1,324

16.11.2012, 12:48

3

можно так:

Visual Basic
1
msgbox("aaaaaaa" & vbnewline & "bbbbbb")



5



ltv_1953

Эксперт MS Access

17142 / 7008 / 1567

Регистрация: 21.06.2012

Сообщений: 13,113

16.11.2012, 12:53

4

Есть специальная константа vbCr.

Visual Basic
1
2
3
                Call MsgBox("Отсутствует одно или несколько обязательных полей в записи." _
                        & vbCr & "Введите обязательные поля." _
                    , vbOKOnly + vbExclamation, Me.Caption)



3



Maxsss

16 / 16 / 0

Регистрация: 10.09.2012

Сообщений: 113

06.12.2012, 17:15

6

Цитата
Сообщение от ltv_1953
Посмотреть сообщение

Есть специальная константа vbCr.

День добрый!
А как в всплывающей подсказе для элементов управления форм перенести текст?
Код

Visual Basic
1
2
3
4
Private Sub UserForm_Initialize()
CommandButton1.ControlTipText = "Первая строка." _
& vbCr & "Вторая строка."
End Sub

не переносит.



0



Эксперт MS Access

17142 / 7008 / 1567

Регистрация: 21.06.2012

Сообщений: 13,113

06.12.2012, 17:36

7

Попробуйте vbCrLf.
Это аналог нажатия Ctrl+Enter при вводе текста в две строки в этом свойстве в конструкторе формы.



0



16 / 16 / 0

Регистрация: 10.09.2012

Сообщений: 113

06.12.2012, 21:40

8



0



1300 / 506 / 63

Регистрация: 09.08.2012

Сообщений: 2,056

06.12.2012, 22:18

9

недавно на форуме кто-то ответил
Как вставить enter
Вариант № 1
Chr(13) & Chr(10)
Вариант № 2
vbCrLf
Вариант № 3
vbNewLine

Ну а в Msgbox можно и просто Chr(13) или Chr(10).



0



ltv_1953

Эксперт MS Access

17142 / 7008 / 1567

Регистрация: 21.06.2012

Сообщений: 13,113

06.12.2012, 23:32

10

Цитата
Сообщение от Maxsss
Посмотреть сообщение

vbCrLf -тоже не помогает.

Не знаю, почему у Вас не работает.
Специально проверил

Visual Basic
1
2
3
4
5
Private Sub Form_Load()
 
    Me.Поле111.ControlTipText = "Строка1" & vbCrLf & "Строка2"
 
End Sub

нормально работает.



0



alvk

Эксперт MS Access

7267 / 4469 / 288

Регистрация: 12.08.2011

Сообщений: 13,512

07.12.2012, 07:35

11

Вот так у меня работает уже не один год:

Visual Basic
1
2
  ctl.ControlTipText = "...... " _
                      & vbNewLine & "......."



0



16 / 16 / 0

Регистрация: 10.09.2012

Сообщений: 113

07.12.2012, 15:01

12

Ищя ответ на вопрос, наткнулся на эту тему.
Предполагал, что и для Excel всплывающая подсказка будет вести себя аналогично.

В Excel для пользовательских форм ни vbNewLine ни vbCrLf не помогают.



0



0 / 0 / 0

Регистрация: 19.01.2018

Сообщений: 3

25.11.2019, 05:20

13

В самой форме для ControlTipText можно поставить перенос строк комбинацией Ctrl+Enter.



0



Эксперт MS Access

7267 / 4469 / 288

Регистрация: 12.08.2011

Сообщений: 13,512

25.11.2019, 05:36

14

Надо же, всего 7 лет прошло и уже такое вумное решение нарисовалось, ай молодца!



0



0 / 0 / 0

Регистрация: 19.01.2018

Сообщений: 3

25.11.2019, 07:19

15

Знаю ))) видел, сейчас столкнулся с данным вопросом, нашел очередное решение — пополнил копилку знаний. Может еще кому пригодится.



0



Эксперт MS Access

7267 / 4469 / 288

Регистрация: 12.08.2011

Сообщений: 13,512

25.11.2019, 07:33

16

Цитата
Сообщение от drewsi
Посмотреть сообщение

пополнил копилку знаний

А про версию Акцесс забыл? За это время вышло 3 новых версии, в которых что-то отрезали, что-то обратно пришили.
Так где комбинацией Ctrl+Enter работает?
в 2010-м работает, в-принципе до остальных пофих



0



0 / 0 / 0

Регистрация: 19.01.2018

Сообщений: 3

25.11.2019, 07:53

17

В версиях Access 2003, 2010 работает.



0



Модератор

Эксперт MS Access

5122 / 2529 / 628

Регистрация: 12.06.2016

Сообщений: 6,749

25.11.2019, 10:17

18

Цитата
Сообщение от alvk
Посмотреть сообщение

А про версию Акцесс забыл? За это время вышло 3 новых версии, в которых что-то отрезали, что-то обратно пришили.
Так где комбинацией Ctrl+Enter работает?
в 2010-м работает, в-принципе до остальных пофих

Работать будет везде.
Что здесь такого особенного?

Это стандартное поведение — получение новой строки в тексте сочетанием клавиш.
Использую в соответствующих случаях.

См. в справке для свойства поля формы EnterKeyBehavior (Поведение по Enter) —
«If you don’t set this property to New Line In Field, you must press CTRL+ENTER to enter a new line in the text box.».



0



Эксперт MS Access

7267 / 4469 / 288

Регистрация: 12.08.2011

Сообщений: 13,512

25.11.2019, 16:48

19

Цитата
Сообщение от Capi
Посмотреть сообщение

Работать будет везде.
Что здесь такого особенного?

Факт вашего комментария видимо, вам виднее.



0



Модератор

Эксперт MS Access

11338 / 4657 / 748

Регистрация: 07.08.2010

Сообщений: 13,494

Записей в блоге: 4

25.11.2019, 16:59

20

Capi,
вряд ли это ответ по теме — в вопросе перенос в MSGBOX, а не в текстовом поле

Цитата
Сообщение от Capi
Посмотреть сообщение

См. в справке для свойства поля формы EnterKeyBehavior (Поведение по Enter) —
«If you don’t set this property to New Line In Field, you must press CTRL+ENTER to enter a new line in the text box.».

Если для этого свойства не установлено значение «Новая строка в поле», необходимо нажать сочетание клавиш CTRL + ВВОД, чтобы ввести новую строку в текстовое поле



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

25.11.2019, 16:59

20

Содержание

  1. Функция MsgBox
  2. Синтаксис
  3. Параметры
  4. Возвращаемые значения
  5. Примечания
  6. Пример
  7. См. также
  8. Поддержка и обратная связь
  9. VBA Excel. Перенос кода процедуры и текста на новую строку
  10. Перенос части выражения на новую строку
  11. Объединение операторов в одной строке
  12. VBA Excel. Работа с текстом (функции)
  13. Функции для работы с текстом
  14. Ключевые слова для работы с текстом
  15. Примеры
  16. Вывод прямых парных кавычек

Функция MsgBox

Выводит сообщение в диалоговом окне, ожидает нажатия кнопки пользователем и возвращает значение типа Integer, которое указывает, какая кнопка была нажата.

Хотите создавать решения, которые расширяют возможности Office на разнообразных платформах? Ознакомьтесь с новой моделью надстроек Office. Надстройки Office занимают меньше места по сравнению с надстройками и решениями VSTO, и вы можете создавать их, используя практически любую технологию веб-программирования, например HTML5, JavaScript, CSS3 и XML.

Синтаксис

MsgBox (сообщение, [ кнопки, ] [ заголовок, ] [ файл_справки, контекст ])

Синтаксис функции MsgBox включает следующие именованные аргументы:

Часть Описание
сообщение Обязательный аргумент. Строковое выражение, отображающееся в диалоговом окне. Максимальная длина строки аргумента сообщение составляет приблизительно 1024 знака и зависит от их ширины. Если запрос состоит из нескольких строк, можно разделить строки с помощью символа возврата каретки (Chr(13)), символа канала строк (Chr(10)) или символа возврата каретки — сочетания символов канала строки (Chr(13) &Chr(10)) между каждой строкой.
кнопки Необязательный аргумент. Числовое выражение, являющееся комбинацией значений, указывающих количество и тип отображаемых кнопок, стиля значков, выбранной по умолчанию кнопки и модальности окна сообщения. Если аргумент кнопки пропущен, по умолчанию используется значение 0.
заголовок Необязательный аргумент. Строковое выражение, отображаемое в заголовке диалогового окна. Если аргумент заголовок пропущен, в заголовке выводится имя приложения.
файл_справки Необязательный аргумент. Строковое выражение, определяющее файл, в котором содержится контекстная справка для данного диалогового окна. Если задан аргумент файл_справки, необходимо также указать аргумент контекст.
контекст Необязательный аргумент. Числовое выражение, представляющее собой номер контекста, присвоенный автором справки соответствующему разделу. Если задан аргумент контекст, необходимо также указать аргумент файл_справки.

Параметры

Константа Значение Описание
vbOKOnly 0 Отображается только кнопка ОК.
vbOKCancel 1 Отображаются кнопки ОК и Отмена.
vbAbortRetryIgnore 2 Отображаются кнопки Прервать, Повторить и Пропустить.
vbYesNoCancel 3 Отображаются кнопки Да, Нет и Отмена.
vbYesNo 4 Отображаются кнопки Да и Нет.
vbRetryCancel 5 Отображаются кнопки Повторить и Отмена.
vbCritical 16 Отображается значок важного сообщения.
vbQuestion 32 Отображение значка Warning Query (Запрос с предупреждением).
vbExclamation 48 Отображение значка Warning Message (Сообщение с предупреждением).
vbInformation 64 Отображается значок информационного сообщения.
vbDefaultButton1 0 По умолчанию активна первая кнопка.
vbDefaultButton2 256 По умолчанию активна вторая кнопка.
vbDefaultButton3 512 По умолчанию активна третья кнопка.
vbDefaultButton4 768 По умолчанию активна четвертая кнопка.
vbApplicationModal 0 Модальность на уровне приложения. Пользователь должен ответить на сообщение, чтобы продолжить работу в текущем приложении.
vbSystemModal 4096 Модальность на уровне системы. При ожидании ответа пользователя на сообщение приостанавливается работа всех приложений.
vbMsgBoxHelpButton 16384 Добавляет кнопку Справка в окно сообщения.
vbMsgBoxSetForeground 65536 Расположение окна сообщения на переднем плане.
vbMsgBoxRight 524288 Текст выравнивается по правому краю.
vbMsgBoxRtlReading 1048576 Система чтения справа налево для иврита и арабского языка.

Первая группа значений (0–5) отражает число и тип кнопок в диалоговом окне. Вторая группа (16, 32, 48, 64) описывает стиль значка сообщения. Третья группа (0, 256, 512) определяет активную по умолчанию кнопку. Наконец, четвертая группа (0, 4096) устанавливает модальность сообщения. При объединении чисел в итоговое значение аргумента buttons следует использовать только один аргумент из каждой группы.

Приведенные здесь константы определены в Visual Basic для приложений, что позволяет заменять ими числовые значения в любом месте программы.

Возвращаемые значения

Константа Значение Описание
vbOK 1 OK
vbCancel 2 Отмена
vbAbort 3 Прервать
vbRetry 4 Повторить
vbIgnore 5 Пропустить
vbYes 6 Да
vbNo 7 Нет

Примечания

Если одновременно указаны аргументы файл_справки и контекст, пользователь может нажать клавишу F1 (Windows) или HELP (Macintosh) для просмотра раздела справки, соответствующего аргументу контекст. Некоторые ведущие приложения, например Microsoft Excel, автоматически добавляют кнопку Справка в диалоговое окно.

Если в диалоговом окне есть кнопка Отмена, ее нажатие равносильно нажатию клавиши ESC. Если в диалоговом окне есть кнопка Справка, для него доступна контекстная справка. Однако до нажатия какой-либо другой кнопки никакое значение не возвращается.

Для указания более одного именованного аргумента необходимо использовать функцию MsgBox в выражении. Чтобы пропустить некоторые из позиционных аргументов, нужно вставить соответствующие запятые.

Пример

В приведенном ниже примере функция MsgBox используется для вывода сообщения о критической ошибке в диалоговом окне с кнопками Да и Нет. Кнопка Нет выбрана по умолчанию. Значение, возвращаемое функцией MsgBox, зависит от нажатой пользователем кнопки. Предполагается, что DEMO.HLP является файлом справки и содержит раздел под номером контекста 1000 .

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Источник

VBA Excel. Перенос кода процедуры и текста на новую строку

Перенос части кода одного выражения VBA Excel на другую строку. Объединение нескольких операторов в одной строке. Программный перенос текста на новую строку.

Перенос части выражения на новую строку

Деление длинного оператора на части улучшит его читаемость, сделает код процедуры более наглядным и компактным, не позволит ему уходить за пределы видимого экрана справа.

Переносимые на новые строки части кода одного выражения разделяются символом нижнего подчеркивания (_), который ставится обязательно после пробела. Этот символ указывает компилятору VBA Excel, что ниже идет продолжение текущей строки.

Пример 1
Процедуры без переноса и с переносом части кода операторов:

Вы можете скопировать код Примера 1 и проверить его работоспособность. В обоих случаях информационное окно MsgBox покажет одинаковый результат.

Иногда пишут, что для переноса кода добавляется пробел с символом подчеркивания. Так легче запомнить и не забыть, что перед знаком подчеркивания обязательно должен быть пробел. Но на самом деле, как видите из примера выше, пробелы уже есть в исходном коде, и мы добавили только символы подчеркивания.

Объединение операторов в одной строке

Множество коротких выражений в коде VBA Excel можно объединить в одной строке. Для этого используется символ двоеточия с пробелом «: », который указывает компилятору, что за ним идет следующий оператор.

Пример 2
Процедуры без объединения и с объединением операторов:

Источник

VBA Excel. Работа с текстом (функции)

Работа с текстом в коде VBA Excel. Функции, оператор & и другие ключевые слова для работы с текстом. Примеры использования некоторых функций и ключевых слов.

Функции для работы с текстом

Основные функции для работы с текстом в VBA Excel:

Функция Описание
Asc(строка) Возвращает числовой код символа, соответствующий первому символу строки. Например: MsgBox Asc(«/Stop»). Ответ: 47, что соответствует символу «/».
Chr(код символа) Возвращает строковый символ по указанному коду. Например: MsgBox Chr(47). Ответ: «/».
Format(Expression, [FormatExpression], [FirstDayOfWeek], [FirstWeekOfYear]) Преобразует число, дату, время в строку (тип данных Variant (String)), отформатированную в соответствии с инструкциями, включенными в выражение формата. Подробнее…
InStr([начало], строка1, строка2, [сравнение]) Возвращает порядковый номер символа, соответствующий первому вхождению одной строки (строка2) в другую (строка1) с начала строки. Подробнее…
InstrRev(строка1, строка2, [начало, [сравнение]]) Возвращает порядковый номер символа, соответствующий первому вхождению одной строки (строка2) в другую (строка1) с конца строки. Подробнее…
Join(SourceArray,[Delimiter]) Возвращает строку, созданную путем объединения нескольких подстрок из массива. Подробнее…
LCase(строка) Преобразует буквенные символы строки в нижний регистр.
Left(строка, длина) Возвращает левую часть строки с заданным количеством символов. Подробнее…
Len(строка) Возвращает число символов, содержащихся в строке.
LTrim(строка) Возвращает строку без начальных пробелов (слева). Подробнее…
Mid(строка, начало, [длина]) Возвращает часть строки с заданным количеством символов, начиная с указанного символа (по номеру). Подробнее…
Replace(expression, find, replace, [start], [count], [compare]) Возвращает строку, полученную в результате замены одной подстроки в исходном строковом выражении другой подстрокой указанное количество раз. Подробнее…
Right(строка, длина) Возвращает правую часть строки с заданным количеством символов. Подробнее…
RTrim(строка) Возвращает строку без конечных пробелов (справа). Подробнее…
Space(число) Возвращает строку, состоящую из указанного числа пробелов. Подробнее…
Split(Expression,[Delimiter],[Limit],[Compare]) Возвращает одномерный массив подстрок, извлеченных из указанной строки с разделителями. Подробнее…
StrComp(строка1, строка2, [сравнение]) Возвращает числовое значение Variant (Integer), показывающее результат сравнения двух строк. Подробнее…
StrConv(string, conversion) Изменяет регистр символов исходной строки в соответствии с заданным параметром «conversion». Подробнее…
String(число, символ) Возвращает строку, состоящую из указанного числа символов. В выражении «символ» может быть указан кодом символа или строкой, первый символ которой будет использован в качестве параметра «символ». Подробнее…
StrReverse(строка) Возвращает строку с обратным порядком следования знаков по сравнению с исходной строкой. Подробнее…
Trim(строка) Возвращает строку без начальных (слева) и конечных (справа) пробелов. Подробнее…
UCase(строка) Преобразует буквенные символы строки в верхний регистр.
Val(строка) Возвращает символы, распознанные как цифры с начала строки и до первого нецифрового символа, в виде числового значения соответствующего типа. Подробнее…
WorksheetFunction.Trim(строка) Функция рабочего листа, которая удаляет все лишние пробелы (начальные, конечные и внутренние), оставляя внутри строки одиночные пробелы.

В таблице перечислены основные функции VBA Excel для работы с текстом. С полным списком всевозможных функций вы можете ознакомиться на сайте разработчика.

Ключевые слова для работы с текстом

Ключевое слово Описание
& Оператор & объединяет два выражения (результат = выражение1 & выражение2). Если выражение не является строкой, оно преобразуется в Variant (String), и результат возвращает значение Variant (String). Если оба выражения возвращают строку, результат возвращает значение String.
vbCrLf Константа vbCrLf сочетает в себе возврат каретки и перевод строки (Chr(13) + Chr(10)) и переносит последующий текст на новую строку (результат = строка1 & vbCrLf & строка2).
vbNewLine Константа vbNewLine в VBA Excel аналогична константе vbCrLf, также сочетает в себе возврат каретки и перевод строки (Chr(13) + Chr(10)) и переносит текст на новую строку (результат = строка1 & vbNewLine & строка2).

Примеры

Вывод прямых парных кавычек

Прямые парные кавычки в VBA Excel являются спецсимволами и вывести их, заключив в самих себя или в одинарные кавычки (апострофы), невозможно. Для этого подойдет функция Chr:

Источник

New Line in VBA MsgBox

Aligning the sentence is very important to convey the right message to the users or readers. To make the sentence proper, we use “new paragraph” or newline as one of the techniques. It usually happens in Word documents. If you have this question, then this article eases your worry. Follow this article completely to learn about the new line in VBA.

In Excel, when we want to insert a new line character, we either press Ctrl + Enter to insert a new line break or use the CHR function with 10. In VBA programming, using newline breakers to frame sentences is almost inevitable. But the question is, how can we insert a new VBA line breaker?

Table of contents
  • New Line in VBA MsgBox
    • How to Insert New Line in VBA MsgBox?
    • Example #1 – Insert New Line in VBA MsgBox Using “vbNewLine.”
    • Example #2 – Insert New Line Using “Char (10)”
    • Example #3 – Insert New Line Using “vbCrLf, vbCr, vbLf”
    • Recommended Articles

VBA New Line

You are free to use this image on your website, templates, etc, Please provide us with an attribution linkArticle Link to be Hyperlinked
For eg:
Source: VBA New Line (wallstreetmojo.com)

How to Insert New Line in VBA MsgBox?

We have seen people using several ways to insert newlines in VBA. So, in this article, we have decided to show you each of them in detail.

Before we show you how to insert a new line in VBA, let us show you why you need to insert lines in VBA. For example, look at the below image.

insert new line 1

We have framed the sentence in the message without inserting any new lines in the VBA codesVBA code refers to a set of instructions written by the user in the Visual Basic Applications programming language on a Visual Basic Editor (VBE) to perform a specific task.read more. Now, look at the below image.

insert new line 2

Suppose you look at the above two images, which one looks neat and clean. Both convey the same message but having a look at both the images. You decide which is better for you and continue reading to learn the second image.

Example #1 – Insert New Line in VBA MsgBox Using “vbNewLine.”

To insert the new line in VBA, we can use the VBA ConstantUsing the VBA “Const” word we can declare constants just like how we declare variables using the “Dim” keyword. After declaring a constant, it cannot be modified later.read more vbNewLine.”

As the name says, it will insert a new line between sentences or characters. For example, look at the below code.

Code:

Sub Type_Example1()

  MsgBox "Hi Welcome to VBA Forum!!!. We will show you how to insert new line in this article"

End Sub

In the above code, we have two sentences. The first one is “Hi, Welcome to VBA Forum!” And the second one is, “We will show you how to insert a new line in this article.”

The above shows these sentences in a single line, only like the below image.

VBA New Line 1

When the sentences are too large, it often creates ambiguity in the readers’ minds, or it doesn’t look pleasant. As a result, readers do not want to read at all.

To avoid all these things, we can show the message in two lines instead of the default line after the first line sentence closes the double quotes and puts the ampersand (&) symbol.

Code:

Sub Type_Example1()

  MsgBox "Hi Welcome to VBA Forum!!!."&

End Sub

VBA New Line Example 1

After the ampersand (&) symbol, press the spacebar and get the VBA constant “vbNewLine.”

Code:

Sub Type_Example1()

  MsgBox "Hi Welcome to VBA Forum!!!." & vbNewLine

End Sub

VBA New Line Example 1-1

After the constant “vbNewLine,” press one more time space bar and add the ampersand (&) symbol.

Code:

Sub Type_Example1()

  MsgBox "Hi Welcome to VBA Forum!!!." & vbNewLine &

End Sub

VBA New Line Example 1-2

After the second ampersand (&) symbol, type one more space character, and add the next line sentence in double quotes.

Code:

Sub Type_Example1()

  MsgBox "Hi Welcome to VBA Forum!!!." & vbNewLine & "We will show you how to insert new line in this article"

End Sub

Example 1-3

We have done it. Run the code to see the two sentences in two lines.

Example 1-4

If you are unhappy with the single line breaker, insert one more line breaker by entering one more new line inserter in VBA MsgboxVBA MsgBox function is an output function which displays the generalized message provided by the developer. This statement has no arguments and the personalized messages in this function are written under the double quotes while for the values the variable reference is provided.read more using “vbNewLine.”

Code:

Sub Type_Example1()

MsgBox "Hi Welcome to VBA Forum!!!." & vbNewLine & vbNewLine & "We will show you how to insert new line in this article"

End Sub

Example 1-5

Above bold and underlined words will insert two line breakers between sentences, and the result is as below.

Example 1-6

Example #2 – Insert New Line Using “Char (10)”

To a new line instead of “vbNewLine,” we can also use the function CHR to insert a new line in VBAVBA CHR is an inbuilt text/string function that returns the printable and non-printable characters present on the keyboard and understands the computer assigned with specific ASCII codes.read more. For example, CHR (10) is the code to insert a new line in VBA. Below is an example of the same.

Code:

Sub Type_Example1()

MsgBox "Hi Wecome to VBA Forum!!!." & Chr(10) & Char(10) & "We will show you how to insert new line in this article"

End Sub

Example #3 – Insert New Line Using “vbCrLf, vbCr, vbLf”

We can also use the constants “vbCrLf, vbCr, vbLf” to insert the new line breaker. Below are examples of the same.

Code:

Sub Type_Example1()

MsgBox "Hi Welcome to VBA Forum!!!" & vbLf & vbLf & "We will show you how to insert new line in this article"

End Sub

Code:

Sub Type_Example1()

MsgBox "Hi Welcome to VBA Forum!!!" & vbCr & vbCr & "We will show you how to insert new line in this article"

End Sub

Code:

Sub Type_Example1()

MsgBox "Hi Welcome to VBA Forum!!!" & vbCrLf & vbCrLf & "We will show you how to insert new line in this article"

End Sub

You can download this VBA New Line Excel here. VBA New Line Excel Template

Recommended Articles

This article has been a guide to VBA New Line. Here, we learned how to insert a new line in VBA MsgBox Using “vbNewLine,” “Char(10),” and “vbCrLf, vbCr, vbLf” to insert the new line breaker along with practical examples and download the Excel template. Below are some useful Excel articles related to VBA: –

  • Excel VBA Selection Range
  • AND Function in VBA
  • VBA Excel Pivot Table
  • VBA Today Function

Понравилась статья? Поделить с друзьями:
  • Msgbox in excel vba vbyesno
  • Ms word это текстовый редактор или нет
  • Ms word это текстовый процессор электронная таблица
  • Ms word это текстовый процессор или нет
  • Ms word это среда разработки