Функция замены VBA - заменить строку

Содержание

В этом руководстве будет показано, как использовать функцию «Заменить VBA» для замены строк текста.

Заменить функцию

Функция VBA Replace возвращает строку с произведенными заменами. При использовании необязательных параметров новая строка может начинаться в позиции, указанной параметром start, и заканчиваться в конце исходной строки.

VBA Заменить Заменить Подстроку

Функцию VBA Replace можно использовать для замены любой найденной подстроки в каждой найденной части.

12345678910111213141516 Sub ReplaceExample_1 ()MsgBox Replace ("ABCABCABC", "A", "!")'Результат: "! BC! BC! BC"MsgBox Replace («Мне нравится розовый, красный и черный», «розовый», «фиолетовый»)Результат: «Мне нравится фиолетовый, красный и черный».MsgBox Replace ("A, B, C, A, B, C, A, B, C", ",", ",")'Результат: "ABCABCABC"MsgBox Replace («ABCABCABC», «ABC», «!»)'Результат: "!!!"MsgBox Replace («ABCABCABC», «ABc», «!»)'Результат: "ABCABCABC"MsgBox Replace ("ABCABCABC", "ZBC", "!")'Результат: "ABCABCABC"Конец подписки

VBA заменить исходное положение

Функцию VBA Replace можно использовать для замены любой найденной подстроки в каждой найденной части. Если мы назначим начальную позицию, то результатом будет часть исходной строки после этой начальной точки.

12345678910111213 Sub ReplaceExample_2 ()MsgBox Replace ("ABCABCABC", "A", "123") 'Результат: "123BC123BC123BC"MsgBox Replace («ABCABCABC», «A», «123», 2) »Результат:« BC123BC123BC »MsgBox Replace («ABCABCABC», «A», «123», 7) »Результат:« 123BC »MsgBox Replace («ABCABCABC», «A», «123», 8) »Результат:« BC »MsgBox Replace ("ABCABCABC", "ABC", "! @") 'Результат: "! @! @! @"MsgBox Replace ("ABCABCABC", "ABC", "! @", 2) 'Результат: "BC! @! @"MsgBox Replace ("ABCABCABC", "ABC", "! @", 6) 'Результат: "C! @"MsgBox Replace ("ABCABCABC", "ABC", "! @", 7) 'Результат: "! @"MsgBox Replace ("ABCABCABC", "ABC", "! @", 8) 'Результат: "BC"Конец подписки

VBA заменяет только несколько вхождений

Функцию VBA Replace можно использовать для замены любой найденной подстроки в каждой найденной части. При желании мы можем решить, сколько вхождений следует заменить.

123456789101112 Sub ReplaceExample_3 ()MsgBox Replace («ABCABCABC», «A», «12») »Результат:« 12BC12BC12BC »MsgBox Replace ("ABCABCABC", "A", "12",, 1) 'Результат: "12BCABCABC"MsgBox Replace («ABCABCABC», «A», «12»,, 2) »Результат:« 12BC12BCABC »MsgBox Replace («ABCABCABC», «A», «12»,, 3) »Результат:« 12BC12BC12BC »MsgBox Replace («ABCABCABC», «A», «12»,, 5) »Результат:« 12BC12BC12BC »MsgBox Replace («ABCABCABC», «A», «12», 3, 1)'Результат: «C12BCABC»'Мы заменили A на 12, 1 раз, начиная с позиции 3 исходной строки.Конец подписки

VBA Заменить чувствительность к регистру

Функция замены VBA по умолчанию чувствительна к регистру. Вы можете изменить это поведение на нечувствительность к регистру, используя необязательный параметр (vbTextCompare). В этом случае вы также должны определить начальную позицию поиска.

12345678910111213 Sub ReplaceExample_4 ()MsgBox Replace («ABcABCABc», «ABc», «12»)Результат: «12ABC12»MsgBox Replace ("ABcABCABc", "ABc", "12",,, vbTextCompare)Результат: «121212».'Когда мы используем vbTextCompare, нам нужно добавить два других необязательных аргумента:'начать и считатьMsgBox Replace («ABcABCABcABc», «ABc», «12», 3, 1)'Результат: "cABC12ABc"«Стартовал с позиции 3 и заменил ABC только 1 раз.Конец подписки

Вы также можете выполнить замену без учета регистра, добавив Option Compare Text в верхнюю часть вашего модуля:

1 Вариант Сравнить текст

VBA заменить двойные кавычки

Функция VBA Replace может заменить символ двойных кавычек, используемый для разделения начала и конца строки.

Функция VBA Chr может возвращать символ из его номера в наборе символов.

1 MsgBox Chr (34) 'Результат: "

Или

1 MsgBox Chr (64) 'Результат: @

Внутри функции VBA Replace можно использовать двойные кавычки с помощью «» »или функции VBA Chr (34).

12345678910111213 Sub ReplaceExample_5 ()Dim StrEx как строкаStrEx = "AB" "AB" ""Результат MsgBox StrEx: AB "AB"MsgBox Replace (StrEx, Chr (34), "12")Результат: AB12AB12MsgBox Replace (StrEx, "" "", "DQ")'Результат: «ABDQABDQ»Конец подписки

VBA заменить строку разрыва в ячейке

Функция VBA Replace может найти специальный символ строки разрыва в ячейке и удалить его или заменить пробелом. Специальный символ строки разрыва может быть введен в ячейку с помощью сочетания клавиш Alt + Enter и может использоваться в коде VBA с его номером набора символов с помощью функции VBA Chr (10).

1234567891011121314 Sub ReplaceExample_6 ()Dim StrEx As String 'Определите строковую переменную'Прочтите значение ячейки A2 на листе Sheet1StrEx = ThisWorkbook.Worksheets ("Sheet1"). Range ("A2"). Value'Символ строки разрыва, вводимый с помощью Alt + Enter, - Chr (10) и невидим.'Эта строка кода заменяет этот символ пробеломStrEx = Заменить (StrEx, Chr (10), "")'Запишите замененное значение в ячейку B2 на листе Sheet1ThisWorkbook.Worksheets ("Sheet1"). Range ("B2"). Value = StrExКонец подписки

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave