Страницы: 1
RSS
извлечение текста между двумя знаками "-" и "/", есть текст, где повторяются "-" и "/" необходимо выбрать то, что находится между ними
 
Добрый день, уважаемые форумчане!
помогите пожалуйста с формулой, у меня уже каша в голове, я почитала, попробовала, ну никак.
В ячейке есть текст из разного количества "-", но с одним "/". Как выбрать значения между "/" и последним "-"
к сожалению с макросами я не в ладах
 
 
ss= Split(текст,"/")
sq= Split( ss(0),"-")
слово=sq(ubound(sq))
Изменено: tula19 - 06.02.2025 12:28:47
 
Код
=СЖПРОБЕЛЫ(ЛЕВСИМВ(ПРАВСИМВ(ПОДСТАВИТЬ(ПОДСТАВИТЬ($A2;"/";"-");"-";ПОВТОР(" ";30));2*30);30))
 
Цитата
написал:
=СЖПРОБЕЛЫ(ЛЕВСИМВ(ПРАВСИМВ(ПОДСТАВИТЬ(ПОДСТАВИТЬ($A2;"/";"-");"-";ПОВТОР(" ";30));2*30);30))
огромное спасибо! просто шикарно! ну почему я так думать не умею!!!! ууу, спасибо!
 
Цитата
написал:
ss= Split(текст,"/")sq= Split( ss(0),"-")слово=sq(ubound(sq))
ой, вот это я совсем не поняла, очень жаль
 
Excel 2021+
Код
=ФИЛЬТР.XML("<r><s>"&ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;"/";"-");"-";"</s><s>")&"</s></r>";"//s[last()-1]")
Согласие есть продукт при полном непротивлении сторон
 
Цитата
написал:
Excel 2021+ Код=ФИЛЬТР.XML("  "&ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;"/";"-");"-";"  ")&"  ";"//s[last()-1]")
спасибо! прямо в растерянности - не знаю о таких возможностях... ссылку можно дать? чтобы познакомиться? боже, как я отстала
 
=TRIM(RIGHT(SUBSTITUTE(LEFT(A2;FIND("/";A2)-1);"-";REPT(" ";99));99))
=СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(ЛЕВБ(A2;НАЙТИ("/";a2)-1);"-";ПОВТОР(" ";99));99))
По вопросам из тем форума, личку не читаю.
 
Цитата
stfio написал: ссылку можно дать?
Конкретно по Вашему случаю - хороший пример Приемах
Деление слипшегося текста функцией ФИЛЬТР.XML
Согласие есть продукт при полном непротивлении сторон
 
Цитата
написал:
хороший пример
пример то хороший, но из-за мощности и универсальности самый медленный вариант

=TRIM(RIGHT(SUBSTITUTE(LEFT(A2,FIND("/",A2)-1),"-",REPT(" ",99)),99)) 1494,141
=TRIM(LEFT(RIGHT(SUBSTITUTE(SUBSTITUTE($A2,"/","-"),"-",REPT(" ",30)),2*30),30))    1677,734
=FILTERXML("<r><s>"&SUBSTITUTE(SUBSTITUTE(A2,"/","-"),"-","</s><s>")&"</s></r>","//s[last()-1]")  2345,703
По вопросам из тем форума, личку не читаю.
 
Цитата
написал: ...и универсальности...
Универсальность она такая, прожорливая
Согласие есть продукт при полном непротивлении сторон
 
Цитата
написал:
Конкретно по Вашему случаю - хороший пример Приемах Деление слипшегося текста функцией ФИЛЬТР.XML
спасибо
 
Цитата
написал:
пример то хороший, но из-за мощности и универсальности самый медленный вариант=TRIM(RIGHT(SUBSTITUTE(LEFT(A2,FIND("/",A2)-1),"-",REPT(" ",99)),99))  1494,141 =TRIM(LEFT(RIGHT(SUBSTITUTE(SUBSTITUTE($A2,"/","-"),"-",REPT(" ",30)),2*30),30))     1677,734 =FILTERXML("  "&SUBSTITUTE(SUBSTITUTE(A2,"/","-"),"-","  ")&"  ","//s[last()-1]")   2345,703
спасибо!
 
pq
 
Для Excel 365:
=ТЕКСТДО(ТЕКСТПОСЛЕ(A2;"-";-1);"/")
 
Цитата
написал:
Для Excel 365:=ТЕКСТДО(ТЕКСТПОСЛЕ(A2;"-";-1);"/")
увы, нету
 
Цитата
написал:
pqlet    from = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],    to = Table.ToList(from,(x)=>List.LastN(Text.SplitAny(x{0},"-/"),2){0})in    to
спасибо, но с макросами у меня совсем никак, спасибо
Страницы: 1
Наверх