Нужно фрагмент текста из книги1 найти в книге матрица и подставить в книгу1. Написания текстов отличаются, поэтому ищем только фрагмент который точно совпадает в обоих книгах.
По раздельности формулы работают и дают нужный результат.
Код
=ПСТР(B5;1;ПОИСК("х";B5;1)+3)
- выдает искомый текст
Код
=ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3);ЛЕВБ('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ДЛСТР(X5));0)
- находит искомый текст в другой книге и возвращает положение искомого текста в другой книге
Код
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;57)
- подставляет значение по ссылке
А вот когда я все это дела соединяю в мега формулу, результат выдает с ошибкой. Искомый текст не совпадает с возвращаемым.
Код
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3);ЛЕВБ('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ДЛСТР(X5)));0)
Как поправить формулу или может альтернативу какую нить предложите?
Нужно фрагмент текста из книги1 найти в книге матрица и подставить в книгу1. Написания текстов отличаются, поэтому ищем только фрагмент который точно совпадает в обоих книгах.
По раздельности формулы работают и дают нужный результат.
Код
=ПСТР(B5;1;ПОИСК("х";B5;1)+3)
- выдает искомый текст
Код
=ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3);ЛЕВБ('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ДЛСТР(X5));0)
- находит искомый текст в другой книге и возвращает положение искомого текста в другой книге
Код
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;57)
- подставляет значение по ссылке
А вот когда я все это дела соединяю в мега формулу, результат выдает с ошибкой. Искомый текст не совпадает с возвращаемым.
Код
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3);ЛЕВБ('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ДЛСТР(X5)));0)
Как поправить формулу или может альтернативу какую нить предложите?Alva
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3);ЛЕВБ('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ДЛСТР(X5));0))
Со скобками немного напутали
Код
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3);ЛЕВБ('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ДЛСТР(X5));0))
Можно чуть упростить и без массивного ввода написать
Код
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3)&"*";'[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;))
Можно чуть упростить и без массивного ввода написать
Код
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3)&"*";'[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;))
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3)&"*";'[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;))
Сути дела это не меняет - формула не работает и при правильной расстановке скобок. Спасибо
=ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3)&"*";'[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;))
Сути дела это не меняет - формула не работает и при правильной расстановке скобок. СпасибоAlva
Можно чуть упростить и без массивного ввода написать [Перевод / Translate] =ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3)&"*";'[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;))
Можно чуть упростить и без массивного ввода написать [Перевод / Translate] =ИНДЕКС('[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;ПОИСКПОЗ(ПСТР(B5;1;ПОИСК("х";B5;1)+3)&"*";'[Матрицы Розницы и Щитовики.xlsx]Лист1'!$B$4:$B$96;))