Функція Excel VBA TRIM (пояснюється з прикладами)

Excel уже має функцію аркуша TRIM, яку можна використовувати, щоб позбутися від початкових, кінцевих та зайвих пробілів між словами/рядками.

У VBA також є функція TRIM (і вона робить те ж саме - видаляє зайві пробіли).

Навіщо нам потрібна функція TRIM у VBA?

Справедливе питання!

Хоча ви можете працювати з вбудованою функцією TRIM у робочих листах Excel, щоб позбутися пробілів. у деяких випадках вам може знадобитися це зробити за допомогою VBA.

Це може бути частиною більшого коду.

Синтаксис функції VBA TRIM

TRIM (рядок)

"Рядок" - це аргумент, який може бути текстовим рядком або змінною, що містить текстовий рядок.

Давайте дізнаємось, як користуватися функцією VBA TRIM, з кількома прикладами.

Приклад 1 - Відображення результату у вікні повідомлення

Припустимо, у вас у комірці А1 такий текст

Зауважте, що перед і після речення є пробіли.

Код нижче прийме це речення і покаже результат після обрізки зайвих пробілів

Sub TrimExample1 () Обрізка MsgBox (Діапазон ("A1")) End Sub

Є одна важлива річ, яку потрібно знати при використанні функції TRIM у VBA - вона видалить лише провідні та кінцеві пробіли. Він не видалить зайві пробіли між словами (що робить вбудована функція TRIM на аркуші).

Наприклад, припустимо, у вас є такий текст у комірці А1 (з додатковими пробілами між словами):

Якщо я використовую наведений вище код VBA, він покаже вікно повідомлення, як показано нижче:

Як можна побачити у результатах вікна повідомлення, зайві пробіли між словами не видаляються функцією VBA TRIM.

Тоді яка альтернатива?

Якщо ви хочете видалити провідні, кінцеві, а також подвійні пробіли між словами, краще скористайтеся наступним кодом:

Sub TrimExample1 () MsgBox WorksheetFunction.Trim (Range ("A1")) End Sub

У наведеному вище коді використовується функція TRIM робочого аркуша (замість використання функції TRIM у VBA).

Примітка: Функція VBA Trim не видаляє символи, що не є пробілами, наприклад, нові рядки (vbNewLine, vbCrLf) тощо.

Приклад 2 - Швидко видаліть початкові та кінцеві пробіли з діапазону клітинок

Припустимо, у вас є набір даних, як показано нижче, де є пробіли перед і позаду:

Ви можете скористатися наведеним нижче кодом, щоб миттєво очистити ці дані та видалити всі провідні та кінцеві пробіли:

Sub TrimExample1 () Dim Rng As Set Range Set Rng = Вибір для кожної клітинки у Rng Cell. Value = Trim (Cell) Next Cell End Sub

Наведений вище код проходить усі клітинки виділення та видаляє пробіли перед і поза.

Вам також можуть сподобатися такі підручники Excel/VBA:

  • 10 способів очищення даних у Excel.
  • Функція Excel VBA Split.
  • Функція Excel VBA InStr.
  • Функція VBA LCase.
  • Функція VBA UCase.
  • Створення користувальницької функції (UDF) у Excel VBA.
wave wave wave wave wave