Excel: Видалення перших або останніх символів (зліва або справа)

  • Поділитися Цим
Michael Brown

При роботі з неструктурованими текстовими даними на робочих аркушах часто виникає необхідність їх розбору для отримання необхідної інформації. У цій статті ви дізнаєтеся про декілька простих способів видалення будь-якої кількості символів з лівого або правого боку текстового рядка.

    Як видалити символи зліва в Excel

    Видалення перших символів з рядка - одна з найпоширеніших задач в Excel, і виконати її можна за допомогою 3 різних формул.

    Видалення першого символу в Excel

    Для видалення першого символу з рядка можна використовувати або функцію REPLACE, або комбінацію функцій RIGHT і LEN.

    REPLACE( рядок , 1, 1, "")

    Тут ми просто беремо 1 символ з першої позиції і замінюємо його на порожній рядок ("").

    ТАК. рядок , LEN( рядок ) - 1)

    У цій формулі ми використовуємо функцію LEN для обчислення загальної довжини рядка і віднімаємо від неї 1 символ. Різниця подається вправо, тому вона витягує стільки-то символів з кінця рядка.

    Наприклад, для видалення першого символу з комірки А2 формули виглядають наступним чином:

    =REPLACE(A2, 1, 1, "")

    =RIGHT(A2, LEN(A2) - 1)

    Видалити символи зліва

    Для видалення початкових символів з лівого боку рядка також використовуються функції REPLACE або RIGHT і LEN, але при цьому слід вказувати, скільки символів потрібно видалити кожного разу:

    REPLACE( рядок , 1, num_chars , "")

    Або

    ТАК. рядок , LEN( рядок ) - num_chars )

    Наприклад, вилучити перші 2 символи з рядка в комірці A2 формули:

    =REPLACE(A2, 1, 2, "")

    =RIGHT(A2, LEN(A2) - 2)

    Для видалення перші 3 символи то формули набувають такого вигляду:

    =REPLACE(A2, 1, 3, "")

    =RIGHT(A2, LEN(A2) - 3)

    На скріншоті нижче показана формула REPLACE в дії. При використанні RIGHT LEN результати були б точно такими ж.

    Спеціальна функція видалення перших n символів

    Якщо ви не проти використання мови VBA в робочих таблицях, ви можете створити власну функцію видалення символів з початку рядка, назвавши її RemoveFirstChars Код функції дуже простий:

    Function RemoveFirstChars(str As String , num_chars As Long ) RemoveFirstChars = Right(str, Len(str) - num_chars) End Function

    Після введення коду в робочу книгу (детальна інструкція тут), ви можете видалити перші n символів з даної комірки за допомогою цієї компактної та інтуїтивно зрозумілої формули:

    RemoveFirstChars(string, num_chars)

    Наприклад, видалити перший символ з рядка в A2, то формула в B2 буде такою:

    =RemoveFirstChars(A2, 1)

    Роздягатися перші два символів з А3, то формула в В3 буде такою:

    =RemoveFirstChars(A4, 2)

    Видалити перші три символів з формату А4, формула у форматі В4:

    =RemoveFirstChars(A4, 3)

    Більше про Використання користувацьких функцій в Excel.

    Як прибрати символи справа

    Для видалення символів з правого боку рядка також можна скористатися нативними функціями або створити власну.

    Видалення останнього символу в Excel

    Для видалення останнього символу в комірці використовується загальна формула:

    LEFT( рядок , LEN( рядок ) - 1)

    У цій формулі ви віднімаєте 1 від загальної довжини рядка і передаєте різницю функції LEFT, щоб вона витягла цю кількість символів з початку рядка.

    Наприклад, щоб видалити останній символ з комірки А2, формула в комірці В2 має вигляд:

    =LEFT(A2, LEN(A2) - 1)

    Видалити символи справа

    Для видалення заданої кількості символів з кінця комірки використовується загальна формула:

    LEFT( рядок , LEN( рядок ) - num_chars )

    Логіка така ж, як і у наведеній вище формулі, і нижче наведемо кілька прикладів.

    Для того, щоб видалити останні 3 символи використовуйте 3 для num_chars :

    =LEFT(A2, LEN(A2) - 3)

    Видалити з реєстру останні 5 символів постачання 5 для num_chars :

    =LEFT(A2, LEN(A2) - 5)

    Користувацька функція для видалення останніх n символів в Excel

    Якщо ви хочете мати власну функцію для видалення будь-якої кількості символів справа, додайте цей VBA-код у свою робочу книгу:

    Function RemoveLastChars(str As String , num_chars As Long ) RemoveLastChars = Left(str, Len(str) - num_chars) End Function

    Функція має назву RemoveLastChars і його синтаксис навряд чи потребує пояснень:

    RemoveLastChars(string, num_chars)

    Для того, щоб випробувати його в польових умовах, давайте позбудемося останній символ в А2:

    =RemoveLastChars(A2, 1)

    Крім того, ми видалимо останні 2 символи з правого боку рядка формату А3:

    =RemoveLastChars(A3, 2)

    Видалити з реєстру останні 3 символи з комірки А4 формула має вигляд:

    =RemoveLastChars(A4, 3)

    Як ви можете бачити на скріншоті нижче, наша кастомна функція працює блискуче!

    Як видалити символи відразу справа і зліва

    У ситуації, коли потрібно стерти символи з обох сторін рядка, можна або послідовно запустити обидві наведені вище формули, або оптимізувати роботу за допомогою функції MID.

    MID( рядок , лівий _ символи + 1, LEN( струна ) - ( лівий _ символи + правильно _ символи )

    Де:

    • chars_left - кількість символів, які потрібно видалити зліва.
    • chars_right - кількість символів, які потрібно видалити справа.

    Припустимо, ви хочете витягти ім'я користувача з рядка на зразок mailto:[email protected] Для цього потрібно видалити частину тексту з початку ( mailto: - 7 символів) і з кінця ( @gmail.com - 11 знаків).

    Підставити у формулу наведені вище числа:

    =MID(A2, 7+1, LEN(A2) - (7+10))

    ...і результат не змусить себе чекати:

    Щоб зрозуміти, що тут насправді відбувається, згадаємо синтаксис функції MID, яка використовується для витягування підрядка певного розміру з середини вихідного рядка:

    MID(text, start_num, num_chars)

    На сьогоднішній день, на жаль, це не так. текст аргумент не викликає ніяких питань - це вихідний рядок (у нашому випадку A2).

    Щоб отримати позицію першого символу для вилучення ( start_num ), ви додаєте 1 до кількості символів, які потрібно викреслити зліва (7+1).

    Щоб визначити, скільки символів потрібно повернути ( num_chars ), підраховується загальна кількість видалених символів (7 + 11) і сума віднімається від довжини всього рядка: LEN(A2) - (7+10)).

    Отримайте результат у вигляді числа

    Яку б з наведених вище формул ви не використовували, на виході завжди буде текст, навіть якщо значення, що повертається, містить тільки числа. Для того, щоб повернути значення результат у вигляді числа або обернути основну формулу у функцію VALUE, або виконати якусь математичну операцію, яка не впливає на результат, наприклад, помножити на 1 або додати 0. Цей прийом особливо корисний, коли ви хочете обчислити результати в подальшому.

    Припустимо, ви видалили перший символ з комірок A2:A6 і хочете підсумувати отримані значення. Дивно, але тривіальна формула SUM повертає нуль. Чому? Очевидно, тому що ви складаєте рядки, а не числа. Виконайте одну з наведених нижче операцій, і проблема буде вирішена!

    =VALUE(REPLACE(A2, 1, 1, ""))

    =RIGHT(A2, LEN(A2) - 1) * 1

    =RemoveFirstChars(A2, 1) + 0

    Видалити перший або останній символ за допомогою Flash Fill

    В Excel 2013 і більш пізніх версіях є ще один простий спосіб видалення першого і останнього символів в Excel - функція Flash Fill.

    1. У комірці, суміжній з першою коміркою з вихідними даними, введіть бажаний результат, опускаючи перший або останній символ з вихідного рядка, і натисніть клавішу Enter .
    2. Почніть вводити очікуване значення в наступну комірку. Якщо Excel відчує закономірність у даних, які ви вводите, він буде дотримуватися тієї ж закономірності в інших комірках і відобразить попередній перегляд ваших даних без першого / останнього символу.
    3. Просто натисніть клавішу Enter, щоб прийняти попередній перегляд.

    Видалення символів за позицією з Ultimate Suite

    Традиційно, користувачі нашого Ultimate Suite можуть впоратися із завданням в кілька кліків, не запам'ятовуючи при цьому купу різноманітних формул.

    Щоб видалити з рядка перші або останні n символів, потрібно зробити наступне:

    1. Про це йдеться на Дані про абіти у вкладці Текст групу, натисніть Видалити > Видалити за позицією .

  • На панелі надбудови виберіть цільовий діапазон, вкажіть, скільки символів потрібно видалити, і натисніть Видалити .
  • Наприклад, для видалення першого символу налаштовуємо наступну опцію:

    Ось так можна видалити підрядок зліва або справа в Excel. Дякую за прочитання і з нетерпінням чекаю зустрічі в нашому блозі на наступному тижні!

    Доступні для завантаження

    Видалення перших або останніх символів - приклади (файл .xlsm)

    Ultimate Suite - пробна версія (файл .exe)

    Майкл Браун — відданий ентузіаст технологій із пристрастю до спрощення складних процесів за допомогою програмних засобів. Маючи понад десятирічний досвід роботи в технологічній індустрії, він відточив свої навички роботи з Microsoft Excel і Outlook, а також із Google Таблицями та Документами. Блог Майкла присвячений тому, щоб поділитися своїми знаннями та досвідом з іншими, надаючи прості поради та навчальні посібники для підвищення продуктивності та ефективності. Незалежно від того, чи є ви досвідченим професіоналом чи початківцем, блог Майкла пропонує цінну інформацію та практичні поради щодо отримання максимальної користі від цих основних програмних інструментів.