Страницы: 1
RSS
Вычленить из середины текста модель телефона
 
Здравствуйте! Подскажите пожалуйста формулу чтобы получить нужную часть текста из ячейки. Пробовал это =ПСТР(A4;7;70) но не знаю как задать конец данных, так как ограничение количеством символов не помогает, их количество всегда разное.
Например из Apple iPhone 4S 16Gb Black / White надо получить это iPhone 4S 16Gb
Прикрепляю пример с файлом. Заранее спасибо за помощь!
 
=ПСТР(A4;ПОИСК(" ";A4)+1;ПОИСК("Gb";A4)-ПОИСК(" ";A4)+1)
 
Цитата
winscolins написал: не знаю как задать конец данных, так как ограничение количеством символов не помогает, их количество всегда разное
Если Вы не знаете, то как нам знать хотя бы ориентир для границы? Какая логика? Только "iPhone" в начале и "Gb" в конце интересуют и прочие ТМ не нужны?

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
по имеющемуся описанию - никак!
если можете словами описать алгоритм вычислений нужного из всего имеющегося, тогда возможно. только сразу хочу заметить что фраза:
"взять кое-что из непонятно чего" - не может служить алгоритмом
единственное исключение было с Иваном-дураком, он получая задачу "пойди-туда-не-знаю-куда, принеси-то-не-знаю-что", обычно лихо с нею справлялся, возвращался обратно с невестой, на коне и при деньгах
то-ли дураки перевелись, то-ли безвозвратно ушли те сказочные времена, но нынче задачи нужно описывать немного конкретнее
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Еще вариант
=REPLACE(LEFT(A19;FIND("Gb";A4)+1);1;FIND(" ";A4);"")
=MID(LEFT(A21;FIND("Gb";A21)+1);FIND(" ";A21)+1;99)

=ЗАМЕНИТЬ(ЛЕВСИМВ(A19;НАЙТИ("Gb ";A19)+2);1;НАЙТИ(" ";A19);"")
=ПСТР(ЛЕВСИМВ(A21;НАЙТИ("Gb";A21)+1);НАЙТИ(" ";A21)+1;99)
Изменено: БМВ - 07.12.2018 20:12:56
По вопросам из тем форума, личку не читаю.
 
Коней нет, невест тоже, но формулы... Миша, нас дураками обозвали! :)
 
Цитата
JayBhagavan написал: iPhone" в начале и "Gb"
Вот такое решение бы помогло, чтоб задать начала и конца, а остальное отсеять
 
То, что предложено, не подходит?
 
vikttur, спасибо! Ваша формула работает, осталось только понять как, чтобы можно было применять эту формулу и к другим данным
 
или вот, совсем короткая формула:
Код
="iPhone 4S 16Gb"
отлично справляется с задачей описанной в #1
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Извиняюсь, иногда трудно правильно сформулировать вопрос)

vikttur, не могли Вы пожалуйста пояснить формулу если не сложно, как Вы так сделали что нужные данные выводятся, хотелось бы понять чтобы в дальнейшем использовать)
 
человеческим языком формула Виктора описывается так:
взять из строки все, что находится между 1-м пробелом, и парой букв Gb вместе с этой парой букв
Изменено: Ігор Гончаренко - 07.12.2018 19:38:29
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Огромное Всем спасибо за помощь!!! А то весь день искал решение и не нашел, видимо не правильно формулирую запросы)
 
Не хотите ответить еще одному помощнику?
 
vikttur, My formulas is very difficult for use. So, no help - no thanks. :-)
Цитата
vikttur написал:
Миша, нас дураками обозвали!
так это Игорь снова в ворчливом настроении :-)
Изменено: БМВ - 07.12.2018 20:19:14
По вопросам из тем форума, личку не читаю.
 
БМВ, огромное спасибо!!! Так тоже работает. Буду пробовать разобраться, чтобы не только получить решение, но и понимать формулы.
 
UDF в столбце C
Код
Function zz$(t$)
   With CreateObject("VBScript.RegExp"): .Pattern = " \w+ \w+ \w+": zz = Trim(.Execute(t)(0))
  End With
End Function
Изменено: кузя1972 - 08.12.2018 16:29:10
 
кнопка цитирования не для бездумного копирования [МОДЕРАТОР]

Здравствуйте! Спасибо! Я так понял это VBA, а как это работает?)
 
в ответ на #18:если у Вас,например, новая книга Excel-сохранить как Книга excel 97-2003 или как файл с поддержкой макросов,затем,например Вид-Макрос-Запись макроса-Остановить запись.Вслед за макросом, Макрос1 -скопировать текст функции,например zz.
Применяйте как обычную формулу в ячейке: =zz(A1),например,для ячейки A1.
Изменено: кузя1972 - 10.12.2018 05:36:13
 
Здравствуйте, а если усложнить задачу. в Ячейке живет три брата, через точку с запятой. Старший брат - Касимов Игорь Равильевич, Средний брат -Касимов Ренат Равильевич,Младший брат - Касимов Антон Равильевич. Им нужно выдать каждому свою ячейку. Пример прилагается
Изменено: Антон Касимов - 29.05.2023 10:53:38
 
Код
=ТРАНСП(ФИЛЬТР.XML("<j><i>"&ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;";";" - ");" - ";"</i><i>")&"</i></j>";"//i[position() mod 2 = 0]"))
 
Код
=ПСТР($A2;ПОИСК("@";ПОДСТАВИТЬ(ПОДСТАВИТЬ($A2;";";"@@";СТОЛБЕЦ()-1);"-";"@";СТОЛБЕЦ()-1))+2;ПОИСК("@@";ПОДСТАВИТЬ(ПОДСТАВИТЬ($A2;";";"@@";СТОЛБЕЦ()-1);"-";"@";СТОЛБЕЦ()-1))-ПОИСК("@";ПОДСТАВИТЬ(ПОДСТАВИТЬ($A2;";";"@@";СТОЛБЕЦ()-1);"-";"@";СТОЛБЕЦ()-1))-2)
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Цитата
написал:
Код
    [URL=#]?[/URL]       1      =ПСТР($A2;ПОИСК(  "@"  ;ПОДСТАВИТЬ(ПОДСТАВИТЬ($A2;  ";"  ;  "@@"  ;СТОЛБЕЦ()-1);  "-"  ;  "@"  ;СТОЛБЕЦ()-1))+2;ПОИСК(  "@@"  ;ПОДСТАВИТЬ(ПОДСТАВИТЬ($A2;  ";"  ;  "@@"  ;СТОЛБЕЦ()-1);  "-"  ;  "@"  ;СТОЛБЕЦ()-1))-ПОИСК(  "@"  ;ПОДСТАВИТЬ(ПОДСТАВИТЬ($A2;  ";"  ;  "@@"  ;СТОЛБЕЦ()-1);  "-"  ;  "@"  ;СТОЛБЕЦ()-1))-2)   
 
Все здорово, только диапазон ячеек изменить не получилось. Имеются пустые столбцы прописывал в скобках D2:H2, не срастется. Убрать бы еще значение #ЗНАЧ! если в ячейке пусто. Так как братьев и сестер бывает от 1 до 10.  
 
Цитата
Антон Касимов написал:
Убрать бы еще значение #ЗНАЧ! если в ячейке пусто.
Возможно Вам поможет =ЕСЛИОШИБКА()
Изменено: Msi2102 - 29.05.2023 16:06:19
 
Цитата
написал:
Цитата
Антон Касимов написал:
Убрать бы еще значение #ЗНАЧ! если в ячейке пусто.
Возможно Вам поможет =ЕСЛИОШИБКА()
Спасибо!!!
 
И теперь все дружно пытаются объяснить мне  где в "Старший брат - Касимов Игорь Равильевич, Средний брат -Касимов Ренат Равильевич,Младший брат - Касимов Антон Равильевич." указаны модели телефонов. Максим В., Тимофеев,  что , так скучно?
По вопросам из тем форума, личку не читаю.
 
все получилось
Изменено: Антон Касимов - 30.05.2023 06:26:37
 
Антон Касимов,  В следующий раз сделайте так чтоб получилось создать собственную тему с вопросом который касается названия, а не как в этот раз.
По вопросам из тем форума, личку не читаю.
 
Средний брат −  Ренат Apple iPhone 4S 16Gb Black / White;
Младший брат − Касимов Антон Равильевич iPhone 4S 16Gb
Изменено: Тимофеев - 30.05.2023 08:50:59
 
Тимофеев,  8)
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
Страницы: 1
Наверх