powered by simpleCommunicator - 2.0.39     © 2025 Programmizd 02
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
17 сообщений из 17, страница 1 из 1
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410192
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день! Прошу помочь в следующем вопросе: при обработке таблицы есть необходимость копировать часть текста, которая расположена между символами.
Например:
_пистон потолка! преобразовать в пистон потолка

полный текст в ячейке:
30786ASAM_пистон потолка!\ Renault Logan/Sandero 1.4/1.6/1.5DCi 04>
или из текста
30789ASAM_клипса бампера! 10шт\ Renault Logan/Sandero 1.4/1.6/1.5DCi 04>
получить:
клипса бампера! 10шт
а еще лучше:
клипса бампера 10шт
Текст в данном случае находится между символами _ и \
могут быть и другие символы (разделители)
Прошу учесть, что я не программист.
В инструментах текстовых формул решения не нашёл. В форуме встречал, что нужно создавать функцию для решения этой задачи.

Заранее спасибо за помощь
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410196
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МаркДВ инструментах текстовых формул решения не нашёл.
Скажи уж честно - не искал... не отыскать функции листа НАЙТИ() и ПСТР() среди аж целых двух десятков других текстовых функций - это особый талант нужен.
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410355
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день Akina!
Спасибо за совет.
Я просмотрел еще раз функцию НАЙТИ() и ознакомился с функцией ПСТР().
В этих функциях я не нашёл возможность поиска текста, который был бы расположен после символа, в данном случае _ и до символа, в данном случае \
Дело в том, что первый символ искомого текста находится в каждой строчке не на одном и том же месте и длина текста разная.
Функции НАЙТИ() и ПСТР() требуют позицию первого знака искомого текста и количество знаков этого текста. А это невозможно, т.к. в разных строках файла эти значения разные. Это видно из приложенного файла. В этих функчиях невозможно указать после какого символа и до какого искать нужную часть текста.

Как это сделать?
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410368
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МаркД,

для начала надо использовать тот же поиск, доступный в Яндексе, Гугле...Примеров использования функций НАЙТИ вместе с ПСТР - море.
Сделанный Вами упор на общее кол-во символов, разное для строк и разное местоположение искомых символов - лишь доказывает, что поиском Вы не пользовались, примеры не искали. Как раз для поиска позиции в произвольном тексте символа и предназначены функции НАЙТИ и ПОИСК. А ПСТР - только для извлечения с нужной позиции нужного кол-ва символов.
Т.е. надо просто совместить эти функции. По сути, я за 30 секунд "изобрел" формулу из двух упомянутых выше:
Код: plaintext
=ПСТР(A1;НАЙТИ("_";A1);НАЙТИ("!";A1)-НАЙТИ("_";A1))
в А1 - текст, часть из которого надо извлечь.
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410397
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist,
Добрый день!
Большое спасибо за помощь!
Применил Вашу функцию =ПСТР(E2389;НАЙТИ("_";E2389);НАЙТИ("\";E2389)-НАЙТИ("_";E2389))
где адрес ячейки E2389 со следующим текстом в ней:
9202959_зеркало правое! мех.\ Ford Transit 94-00
и получил следующий текст:
_зеркало правое! мех.

Как видно символ _ в начале текста остался. Я что-то не так написал в функции?
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410436
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
*facepalm*
Плюс 1 ко второму параметру и минус 1 от третьего...
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410440
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
добрый день!

не понял что означает *facepalm*

подставил +1 и -1 по Вашему указанию и УРА всё ок.

Спасибо!

А что добавить, чтобы в середине текста убрать символ ! ?
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410448
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть ещё одна функция. ЗАМЕНИТЬ(). Используй...
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410455
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

спасибо
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410464
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

спасибо!

получается функцией ПОДСТАВИТЬ, но после предыдущей коррекции, т.е. когда остался ! в тексте.
А вот как написать как продолжение функции =ПСТР(E2439;НАЙТИ("_";E2439)+1;НАЙТИ("\";E2439)-НАЙТИ("_";E2439)-1)

??

Функцией ЗАМЕНИТЬ не сообразил как сделать
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39410489
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

разобрался с функцией ЗАМЕНИТЬ, но как её объединить с функцией =ПСТР(E2439;НАЙТИ("_";E2439)+1;НАЙТИ("\";E2439)-НАЙТИ("_";E2439)-1) подскажите плиз
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39412000
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist,

Добрый вечер

Возможно ли совместить с функцией =ПСТР(A1;НАЙТИ("_";A1);НАЙТИ("!";A1)-НАЙТИ("_";A1)) функцию ЗАМЕНИТЬ для того, чтобы одновременно исключить из текста символ: !
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39412135
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МаркД,

Возможно. Посмотрите, как совмещаются другие функции и пробуйте. Надо просто ПСТР и все, что внутри вставить в ЗАМЕНИТЬ(или в ПОДСТАВИТЬ). Мне ПОДСТАВИТЬ нравится больше, т.к. не надо вычислять позицию символа для замены. Поэтому её и приведу дальше.
Тупо выкидывать готовые решения не мой профиль. Мое мнение, что человек должен для решения своей задачи думать чуть больше, чем другие. И если не будете пытаться вникнуть в суть работы функций - то так и будете все свои проблемы решать через форум.
Разбор:
каждая функция может содержать вложенную функцию.
Например, я выше привел функцию ПСТР. Но для нахождения позиции, от которой начинать выдергивать текст, я использовал функцию НАЙТИ. Т.е. вложил её в ПСТР. И то же самое для получения кол-ва символов. На её примере:
Код: plaintext
1.
2.
=ПСТР(A1;НАЙТИ("_";A1);НАЙТИ("!";A1)-НАЙТИ("_";A1))
=ПСТР(A1;11;32-11)
=ПСТР(A1;11;21)

Аналогично, Вам остается сделать с функцией ЗАМЕНИТЬ.
Записываете функцию ПОДСТАВИТЬ на лист, делая ссылку на ячейку, с результатом ПСТР(скажем, это В1):
Код: plaintext
=ПОДСТАВИТЬ(B1;"!";"";1)
Получили результат.
Теперь копируем формулу из В1 и вставляем вместо ссылки на В1 внутри функции ПОДСТАВИТЬ, только без знака равно:
Код: plaintext
ПСТР(A1;НАЙТИ("_";A1);НАЙТИ("!";A1)-НАЙТИ("_";A1))

Готовую формулу не привожу - уверен, у Вас все получится.
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39412303
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist,

Добрый день!

Буду пробовать. Спасибо за науку! С первым днём Весны!
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39412319
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist,

К сожалению я допустил ошибку в написании функции, которую использовал для копирования части текста из ячейки А1, когда писал Вам предыдущее сообщение: =ПСТР(A1;НАЙТИ("_";A1);НАЙТИ("!";A1)-НАЙТИ("_";A1)) Вместо "!" должен быть символ "\"

После выполнения функции текст содержит символ !

Буду пытаться интегрировать обе функции по Вашему совету. Если решу этот вопрос, сообщу.

Спасибо
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39412349
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist,

функция =ПОДСТАВИТЬ(ПСТР(A1;НАЙТИ("_";A1)+1;НАЙТИ("\";A1)-НАЙТИ("_";A1)-1);"!";"") решила полностью задачу

Спасибо Вам
...
Рейтинг: 0 / 0
Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
    #39415039
МаркД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist,

Добрый вечер,

подскажите пожалуйста где можно почитать о применении текстовых функций и создании объединённых вариантов из двух или нескольких функций.
Например, как в одной ячейке применив функцию ПОДСТАВИТЬ назначить не один вариант старого текста, а два и подставить один вариант нового текста.
Конечно эту задачу можно сделать пошагово, но если возможно иметь несколько аргументов, то можнорешать преобразование быстрее.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Преобразование текста в ячейке Excel 2007, копирование части текста в другую ячейку.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]