Excel VBA Замініть функцію

Як і в Excel, у нас є функція, де ми можемо знайти та замінити будь-яке слово чи символ чи пропозицію будь-якою буквою. Але за допомогою цього процесу ми можемо замінити лише один вид пропозиції або букви за один раз. За допомогою функції заміни VBA ми можемо замінити якомога більше слів чи букв чи речень за один знімок. Це економить величезний час та зусилля, виконуючи одноразову діяльність кілька разів. Для цього ми будемо використовувати функцію Замінити, яка знаходиться у вбудованому списку функцій VBA.

Нижче синтаксис та аргумент функції Замінити в VBA.

Як використовувати Excel VBA функцію заміни?

Ми дізнаємось, як використовувати функцію VBA Replace Excel за допомогою декількох прикладів.

Ви можете завантажити цей шаблон заміни Excel VBA тут - VBA Замінити шаблон Excel

Функція заміни VBA - приклад №1

У нас є зразкові дані деяких речень, де ми замінимо одне слово і вставимо оновлене речення у стовпчик Б речення.

Виконайте наведені нижче дії, щоб використовувати функцію Замінити в Excel VBA.

Крок 1: Перейдіть до VBA і на вкладці меню Вставка виберіть Модуль.

Крок 2: Тепер запишіть підкатегорію в назві виконуваної функції або в будь-якому імені за вашим вибором, як показано нижче.

Код:

 Sub VBA_Replace2 () Кінець Sub 

Крок 3: Тепер визначте розмір як Довгий, оскільки ми будемо вибирати повне речення. Ось ми сприйняли це як X.

Код:

 Sub VBA_Replace2 () Dim X як довгий кінець Sub 

Крок 4: Тепер у цьому Long X виберіть максимальний діапазон до того, куди наші дані можуть піднятися. Тут ми прийняли за діапазон комірок A1000 і для підйому до тих пір, поки наші дані не почнуть використовувати End (xlUp), а потім рядком (.). Це означає, що ми будемо рухатися вгору в тому ж стовпці до того рядка, в якому є дані. Цей процес у житті Ctrl + клавіша зі стрілкою вгору у excel.

Код:

 Sub VBA_Replace2 () Dim X As Long X = Діапазон ("A1000"). End (xlUp) .Row End Sub 

Примітка . Ми можемо вибрати з End (xlDown), але він може не додавати жодних розривів або порожніх комірок між даними, якщо дані є.

Крок 5: Тепер знову визначте ще один вимір Y довгий, як показано нижче.

Код:

 Sub VBA_Replace2 () Dim X As Long X = Діапазон ("A1000"). End (xlUp) .Row Dim Y As Long End Sub 

Крок 6: Тепер запустіть цикл For Next для другого визначеного розміру Y з положення комірки 2 до діапазону X (остання заповнена комірка)

Примітка. Вибір комірки 2 означає, що ми не розглядаємо заголовок для заміни.

Код:

 Sub VBA_Replace2 () Dim X As Long X = Діапазон ("A1000"). Кінець (xlUp) .Row Dim Y As Long For Y = 2 To X Next Y End Sub 

Крок 7: Тепер виберіть значення стовпця B як діапазон, як Y, а потім крапку (.), Це як вставлення функції в excel.

Код:

 Під VBA_Replace2 () Dim X як довгий X = діапазон ("A1000"). Кінець (xlUp). 

Крок 8: Тепер, як ми бачили в синтаксисі VBA функції «Замінити вище», введіть «Замінити» та виберіть стовпці «А» і «Y» в якості першого виразу рядка, а потім слова, які нам потрібно замінити з таблиці.

Код:

 Sub VBA_Replace2 () Dim X As Long X = Діапазон ("A1000"). Кінець (xlUp) .Row Dim Y As Long For Y = 2 To X Range ("B" & Y). "& Y), " Делі ", " Нью-Делі ") Далі Y Кінець Підряд 

Крок 9: Тепер складіть повний код і запустіть. Як тільки ми це зробимо, слово "Делі" від вироку А тепер замінено на роботу "Нью-Делі", і все речення скопіюється у вирок Б.

Ми можемо вибрати рядок слів або речення та замінити його будь-якими потрібними літерами чи реченнями.

Функція заміни VBA - приклад №2

Є ще один спосіб замінити слова або речення за допомогою кодування VBA. Для цього у нас є список із 7 предметів, які повторюються. І нам потрібно замінити ці назви предметів на додавання порядкових номерів перед кожним іменем теми, як показано нижче.

Як ми бачимо на наведеному вище скріншоті, стовпець Е має унікальні назви тих предметів, які перебувають у колонці B, а стовпець F має назви предметів із порядковим номером на початку цього.

Виконайте нижче кроки, щоб використовувати функцію Замінити в VBA.

Крок 1: Тепер перейдіть до VBA і в меню Вставка додайте новий модуль. Як тільки ми це отримаємо, почніть писати підкатегорію в назві функції, яка виконується, як показано нижче.

Код:

 Sub VBA_Replace () Кінець Sub 

Крок 2: Тепер розглянемо параметр Rng як діапазон, InputRng як діапазон і ReplaceRng як діапазон. Ви можете вибрати будь-які інші літери або слова для визначення діапазонів.

Код:

 Sub VBA_Replace () Dim Rng As Range Dim InputRng As Range, ReplaceRng As End Range Sub 

Крок 3: Тепер використовуйте xTitleId як діалогове вікно і дайте йому ім'я. Тут ми назвали його " VBA_Replace ".

Код:

 Sub VBA_Replace () Dim Rng As Range Dim InputRng As Range, ReplaceRng As Range xTitleId = "VBA_Replace" Кінець Sub 

Крок 4: Тепер призначте Application.Selection за допомогою InputRng, це дасть можливість вибраному додатку використовуватись у VBA.

Код:

 Sub VBA_Replace () Dim Rng As Range Dim InputRng As Range, ReplaceRng As Range xTitleId = "VBA_Replace" Встановити InputRng = Application.Selection End Sub 

Крок 5: Тепер у наступний рядок вставляємо InputBox трьох типів, початковий діапазон, xTitleId та InputRng. Оригінальний діапазон - це список тих предметів, які потрібно замінити, перелічених у колонці B. xTitledId - це назви діалогових вікон у виконаній функції. І InputRng - це діапазон таблиць даних у стовпцях E та F.

Код:

 Sub VBA_Replace () Dim Rng As Range Dim InputRng As Range, ReplaceRng As Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Оригінальний діапазон", xTitleId, InputRng.Address, type: = 8) Кінець Під 

Крок 6: Тепер у наступному рядку призначте Input for ReplaceRng і для цього виберіть стовпчик Замінити діапазон. Відпочинок як такий же.

Код:

 Sub VBA_Replace () Dim Rng As Range Dim InputRng As Range, ReplaceRng As Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Оригінальний діапазон", xTitleId, InputRng.Address, type: = 8) Встановити ReplaceRng = Application.InputBox ("Замінити діапазон:", xTitleId, Тип: = 8) Кінцевий підзаголовок 

Крок 7: Тепер ми будемо використовувати Application.Screenupdating функцію, як видно з назви, вона використовується для оновлення, якщо вона помилкова.

Код:

 Sub VBA_Replace () Dim Rng As Range Dim InputRng As Range, ReplaceRng As Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Оригінальний діапазон", xTitleId, InputRng.Address, type: = 8) Встановити ReplaceRng = Application.InputBox ("Замінити діапазон:", xTitleId, Тип: = 8) Application.ScreenUpdating = False End Sub 

Крок 8: Тепер вставити цикл For-Next . І для кожного діапазону Rng замініть значення зі стовпця ReplaceRng.

Код:

 Sub VBA_Replace () Dim Rng As Range Dim InputRng As Range, ReplaceRng As Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Оригінальний діапазон", xTitleId, InputRng.Address, type: = 8) Встановіть ReplaceRng = Application.InputBox ("Замінити діапазон:", xTitleId, тип: = 8) Application.ScreenUpdating = Неправильно для кожного Rng в ReplaceRng.Columns (1) .Cells Next End Sub 

Крок 9: Нарешті замініть InputRng значеннями, наявними в Rng, з цілого аркуша.

Код:

 Sub VBA_Replace () Dim Rng As Range Dim InputRng As Range, ReplaceRng As Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Оригінальний діапазон", xTitleId, InputRng.Address, type: = 8) Встановити ReplaceRng = Application.InputBox ("Замінити діапазон:", xTitleId, тип: = 8) Application.ScreenUpdating = Неправильно для кожного Rng в ReplaceRng.Columns (1) .Cells InputRng.Replace what: = Rng.Value, substitution: = Rng.Offset (0, 1) .Value, Lookat: = xlWhole Next End Sub 

Крок 10: Після закінчення компілюйте та запустіть код. Ми отримаємо і діалогове вікно від імені VBA_Replace. Звідси виберіть список предметів, які нам потрібно замінити як оригінальний діапазон, і натисніть кнопку ОК. Тоді ми отримаємо ще одне поле, звідти виберемо діапазон Замінити від E2 до F8 . У цій таблиці є дані, які потрібно замінити та натиснути кнопку ОК.

Ми отримаємо Дані у стовпці В, яку замінять на дані у колонці F із порядковим номером.

Для огляду, стовпець Е має унікальні назви предметів. І стовпець F має назви предметів із порядковими номерами. Таким чином, ці дані у колонці B замінюються даними у колонці F.

Плюси заміни функції VBA

  • Ми можемо замінити кілька слів або речень одним знімком.
  • Немає обмежень у словах чи тексті, якими ми не можемо замінити.
  • Синтаксис заміни в VBA такий же простий, як і використання функції SumIf в excel.
  • Замінити VBA, як показано в прикладі-1, це найпростіший спосіб застосувати.

Що потрібно пам’ятати

  • Збережіть як Marco Enabled Excel, щоб уникнути втрати письмового коду в VBA.
  • Завжди враховуйте розміри таким чином, що вони створюватимуть додану вартість, поки ми вибираємо ті, що в коді.
  • Переконайтесь, що ви вибрали весь діапазон аркуша, як показано в прикладі-2, якщо він обмежений для отримання результату. Або ви можете визначити та вибрати обмежений діапазон комірок, який буде використовуватися у функції заміни.

Рекомендовані статті

Це було керівництвом щодо функції заміни VBA. Тут ми обговорили VBA Замінити та як використовувати функцію заміни Excel VBA разом із практичними прикладами та шаблоном Excel, який можна завантажити. Ви також можете ознайомитися з іншими запропонованими нами статтями -

  1. Повні навчальні посібники з циклів VBA
  2. Як використовувати VBA Do циклу?
  3. Що таке формат номера VBA?
  4. Як створити VBA MsgBox?

Категорія: