Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Удаление нескольких символов после определенного знака - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Удаление нескольких символов после определенного знака (Формулы/Formulas)
Удаление нескольких символов после определенного знака
darkside134 Дата: Среда, 20.12.2017, 11:50 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Здравствуйте гуру экселя. Подскажите формулу, которая может удалить определенное количество символов после определенного знака. Поиск не дал результатов(
Пример.
Есть строка в столбце такого вида: Осветляющая маска (Dermalight | Lightening Mask) 128087 50 мл Holy Land. Нужно оставить то, что в скобках (без самих скобок), и то, что идет после артикула.
На выходе должна получиться такая строка: Dermalight | Lightening Mask 50 мл Holy Land
Для удаления первой части до скобки "(" использую формулу
Код
=ПСТР(A2;НАЙТИ("(";A2)+1;32000)
Получаю: Dermalight | Lightening Mask) 128087 50 мл Holy Land
Вопрос: подскажите формулу которая сможет удалить это ") 128087" , т.е. скобку и артикул с пробелом 7 знаков.
Спасибо.
К сообщению приложен файл: 45042.xlsm(8.6 Kb)


Сообщение отредактировал darkside134 - Среда, 20.12.2017, 12:00
 
Ответить
СообщениеЗдравствуйте гуру экселя. Подскажите формулу, которая может удалить определенное количество символов после определенного знака. Поиск не дал результатов(
Пример.
Есть строка в столбце такого вида: Осветляющая маска (Dermalight | Lightening Mask) 128087 50 мл Holy Land. Нужно оставить то, что в скобках (без самих скобок), и то, что идет после артикула.
На выходе должна получиться такая строка: Dermalight | Lightening Mask 50 мл Holy Land
Для удаления первой части до скобки "(" использую формулу
Код
=ПСТР(A2;НАЙТИ("(";A2)+1;32000)
Получаю: Dermalight | Lightening Mask) 128087 50 мл Holy Land
Вопрос: подскажите формулу которая сможет удалить это ") 128087" , т.е. скобку и артикул с пробелом 7 знаков.
Спасибо.

Автор - darkside134
Дата добавления - 20.12.2017 в 11:50
китин Дата: Среда, 20.12.2017, 11:54 | Сообщение № 2
Группа: Модераторы
Ранг: Участник клуба
Сообщений: 5071
Репутация: 807 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
подскажите формулу которая сможет удалить это ")

встречная просьба соблюдать правила форума и оформить свое сообщение
Как оформлять сообщения?


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538
 
Ответить
Сообщение
подскажите формулу которая сможет удалить это ")

встречная просьба соблюдать правила форума и оформить свое сообщение
Как оформлять сообщения?

Автор - китин
Дата добавления - 20.12.2017 в 11:54
Nic70y Дата: Среда, 20.12.2017, 12:05 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4847
Репутация: 1050 ±
Замечаний: 0% ±

Excel 2013
Код
=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПСТР(ПОДСТАВИТЬ(A1;"(";ПОВТОР(" ";126));126;ДЛСТР(A1));")";))


ЯД(poison) 41001841029809
+7 978 049 98 74 (мтс)
 
Ответить
Сообщение
Код
=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПСТР(ПОДСТАВИТЬ(A1;"(";ПОВТОР(" ";126));126;ДЛСТР(A1));")";))

Автор - Nic70y
Дата добавления - 20.12.2017 в 12:05
китин Дата: Среда, 20.12.2017, 12:06 | Сообщение № 4
Группа: Модераторы
Ранг: Участник клуба
Сообщений: 5071
Репутация: 807 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
чисто по вашему примеру
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));"");ПСТР(ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));"");ПОИСК(")";ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));""));7);"")
К сообщению приложен файл: darkside134.xlsm(10.0 Kb)


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538
 
Ответить
Сообщениечисто по вашему примеру
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));"");ПСТР(ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));"");ПОИСК(")";ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));""));7);"")

Автор - китин
Дата добавления - 20.12.2017 в 12:06
darkside134 Дата: Среда, 20.12.2017, 12:35 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПСТР(ПОДСТАВИТЬ(A1;"(";ПОВТОР(" ";126));126;ДЛСТР(A1));")";))

Это немного не подходит, артикул остается, а его тоже нужно убрать.

чисто по вашему примеру

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));"");ПСТР(ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));"");ПОИСК(")";ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));""));7);"")

Этот код подходит.
Часов 5 потратил на поиски и тесты формул, ничего не выходило. Спасибо всем кто откликнулся!
 
Ответить
Сообщение
=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПСТР(ПОДСТАВИТЬ(A1;"(";ПОВТОР(" ";126));126;ДЛСТР(A1));")";))

Это немного не подходит, артикул остается, а его тоже нужно убрать.

чисто по вашему примеру

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));"");ПСТР(ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));"");ПОИСК(")";ПОДСТАВИТЬ(A1;ПСТР(A1;1;ПОИСК("(";A1));""));7);"")

Этот код подходит.
Часов 5 потратил на поиски и тесты формул, ничего не выходило. Спасибо всем кто откликнулся!

Автор - darkside134
Дата добавления - 20.12.2017 в 12:35
Che79 Дата: Среда, 20.12.2017, 12:49 | Сообщение № 6
Группа: Проверенные
Ранг: Старожил
Сообщений: 1274
Репутация: 227 ±
Замечаний: 0% ±

Excel 2007, 2013
А я "в лоб" стал делать :)
Код
=СЖПРОБЕЛЫ(ПСТР(A1;ПОИСК("(";A1)+1;ПОИСК(")";A1)-1-ПОИСК("(";A1))&" "&ПСТР(ПРАВБ(A1;ДЛСТР(A1)-ПОИСК(")";A1));8;99))
- зеленые ячейки
[offtop] китин, Игорь, в твоей формуле, кмк, последнюю цифру 7 надо заменить на 8
К сообщению приложен файл: darkside134_1.xlsm(10.4 Kb)


Делай нормально и будет нормально!
 
Ответить
СообщениеА я "в лоб" стал делать :)
Код
=СЖПРОБЕЛЫ(ПСТР(A1;ПОИСК("(";A1)+1;ПОИСК(")";A1)-1-ПОИСК("(";A1))&" "&ПСТР(ПРАВБ(A1;ДЛСТР(A1)-ПОИСК(")";A1));8;99))
- зеленые ячейки
[offtop] китин, Игорь, в твоей формуле, кмк, последнюю цифру 7 надо заменить на 8

Автор - Che79
Дата добавления - 20.12.2017 в 12:49
sv2014 Дата: Среда, 20.12.2017, 13:26 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 220
Репутация: 60 ±
Замечаний: 0% ±

Excel 2013
darkside134, вариант функций

[vba]
Код
Function vvv$(t$)
With CreateObject("VBScript.RegExp"): .Pattern = " \((.+)\).+( \d+ мл .+)"
  vvv = .Execute(t)(0).Submatches(0) & Chr(32) & .Execute(t)(0).Submatches(1)
End With
End Function
[/vba]

[vba]
Код
Function uuu$(t$)
With CreateObject("VBScript.RegExp"): .Pattern = "^.+ \((.+)\).+( \d+ мл .+)$"
  uuu = .Replace(t, "$1 $2")
End With
End Function
[/vba]
К сообщению приложен файл: example_20_12_2.xlsm(16.2 Kb)


Сообщение отредактировал sv2014 - Четверг, 21.12.2017, 12:26
 
Ответить
Сообщениеdarkside134, вариант функций

[vba]
Код
Function vvv$(t$)
With CreateObject("VBScript.RegExp"): .Pattern = " \((.+)\).+( \d+ мл .+)"
  vvv = .Execute(t)(0).Submatches(0) & Chr(32) & .Execute(t)(0).Submatches(1)
End With
End Function
[/vba]

[vba]
Код
Function uuu$(t$)
With CreateObject("VBScript.RegExp"): .Pattern = "^.+ \((.+)\).+( \d+ мл .+)$"
  uuu = .Replace(t, "$1 $2")
End With
End Function
[/vba]

Автор - sv2014
Дата добавления - 20.12.2017 в 13:26
китин Дата: Среда, 20.12.2017, 13:30 | Сообщение № 8
Группа: Модераторы
Ранг: Участник клуба
Сообщений: 5071
Репутация: 807 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
последнюю цифру 7 надо заменить на 8

пробел сожрет


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538
 
Ответить
Сообщение
последнюю цифру 7 надо заменить на 8

пробел сожрет

Автор - китин
Дата добавления - 20.12.2017 в 13:30
pabchek Дата: Среда, 20.12.2017, 13:36 | Сообщение № 9
Группа: Проверенные
Ранг: Ветеран
Сообщений: 899
Репутация: 215 ±
Замечаний: 0% ±

Excel 2007
"До кучи"
Код
=ПОДСТАВИТЬ(ЗАМЕНИТЬ(A1;ПОИСК(") ?????? ";A1);8;"");ЛЕВБ(A1;ПОИСК("(";A1));"")

Ой, чего это я...
Код
=ПОДСТАВИТЬ(ЗАМЕНИТЬ(A1;ПОИСК(")";A1);8;"");ЛЕВБ(A1;ПОИСК("(";A1));"")


"Учиться, учиться и еще раз учиться!"
WM: R399923528092


Сообщение отредактировал pabchek - Среда, 20.12.2017, 13:38
 
Ответить
Сообщение"До кучи"
Код
=ПОДСТАВИТЬ(ЗАМЕНИТЬ(A1;ПОИСК(") ?????? ";A1);8;"");ЛЕВБ(A1;ПОИСК("(";A1));"")

Ой, чего это я...
Код
=ПОДСТАВИТЬ(ЗАМЕНИТЬ(A1;ПОИСК(")";A1);8;"");ЛЕВБ(A1;ПОИСК("(";A1));"")

Автор - pabchek
Дата добавления - 20.12.2017 в 13:36
darkside134 Дата: Среда, 20.12.2017, 13:57 | Сообщение № 10
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Оффтоп:
китин, Игорь, в твоей формуле, кмк, последнюю цифру 7 надо заменить на 8

пробел сожрет

Здесь кстати да, нужно на 8 заменить, а то последняя цифра артикула всплывает)
 
Ответить
Сообщение
Оффтоп:
китин, Игорь, в твоей формуле, кмк, последнюю цифру 7 надо заменить на 8

пробел сожрет

Здесь кстати да, нужно на 8 заменить, а то последняя цифра артикула всплывает)

Автор - darkside134
Дата добавления - 20.12.2017 в 13:57
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Удаление нескольких символов после определенного знака (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2018 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!