Отобразить диапазон из других ячеек.
ALARMus
Дата: Пятница, 14.09.2012, 17:02 |
Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
В ячейке А1 стоит значение С1 В ячейке А2 стоит значение С6 Как в функции указать диапазон, начало и конец которого указаны в А1 и А2 ВПР("искомый текст2";значение из А1:значение из А2 ;2) Значения в А1 и А2 в свою очередь тоже формульные: А1="C"&ТЕКСТ((ПОИСКПОЗ(искомый текст1;диапазон));0) А2="C"&ТЕКСТ((ПОИСКПОЗ(искомый текст1;диапазон))+6;0) Для определенности написал, что в данный момент "искомый текст1" нашелся в первой строке. Поэтому в идеале вставить бы в ВПР сразу функции из А1 и А2 - чтобы в одной ячейке все вычислялось бы
В ячейке А1 стоит значение С1 В ячейке А2 стоит значение С6 Как в функции указать диапазон, начало и конец которого указаны в А1 и А2 ВПР("искомый текст2";значение из А1:значение из А2 ;2) Значения в А1 и А2 в свою очередь тоже формульные: А1="C"&ТЕКСТ((ПОИСКПОЗ(искомый текст1;диапазон));0) А2="C"&ТЕКСТ((ПОИСКПОЗ(искомый текст1;диапазон))+6;0) Для определенности написал, что в данный момент "искомый текст1" нашелся в первой строке. Поэтому в идеале вставить бы в ВПР сразу функции из А1 и А2 - чтобы в одной ячейке все вычислялось бы ALARMus
Сообщение отредактировал ALARMus - Пятница, 14.09.2012, 17:54
Ответить
Сообщение В ячейке А1 стоит значение С1 В ячейке А2 стоит значение С6 Как в функции указать диапазон, начало и конец которого указаны в А1 и А2 ВПР("искомый текст2";значение из А1:значение из А2 ;2) Значения в А1 и А2 в свою очередь тоже формульные: А1="C"&ТЕКСТ((ПОИСКПОЗ(искомый текст1;диапазон));0) А2="C"&ТЕКСТ((ПОИСКПОЗ(искомый текст1;диапазон))+6;0) Для определенности написал, что в данный момент "искомый текст1" нашелся в первой строке. Поэтому в идеале вставить бы в ВПР сразу функции из А1 и А2 - чтобы в одной ячейке все вычислялось бы Автор - ALARMus Дата добавления - 14.09.2012 в 17:02
ALARMus
Дата: Пятница, 14.09.2012, 17:30 |
Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
вот так если полностью Еще раз подправил файл с новыми пояснениями
вот так если полностью Еще раз подправил файл с новыми пояснениями ALARMus
К сообщению приложен файл:
_1.xlsx
(14.4 Kb)
Сообщение отредактировал ALARMus - Пятница, 14.09.2012, 18:19
Ответить
Сообщение вот так если полностью Еще раз подправил файл с новыми пояснениями Автор - ALARMus Дата добавления - 14.09.2012 в 17:30
DV
Дата: Пятница, 14.09.2012, 18:24 |
Сообщение № 3
Группа: Друзья
Ранг: Обитатель
Сообщений: 286
Репутация:
194
±
Замечаний:
0% ±
Excel 2010 RUS
Если "Итог 1:" всегда на 4 строки ниже кода, то все намного проще (Лист 2 В2): Code
=ИНДЕКС(Лист1!C$2:C$36;ПОИСКПОЗ(A2;Лист1!A$2:A$36;0)+4)
Если "Итог 1:" всегда на 4 строки ниже кода, то все намного проще (Лист 2 В2): Code
=ИНДЕКС(Лист1!C$2:C$36;ПОИСКПОЗ(A2;Лист1!A$2:A$36;0)+4)
DV
Ответить
Сообщение Если "Итог 1:" всегда на 4 строки ниже кода, то все намного проще (Лист 2 В2): Code
=ИНДЕКС(Лист1!C$2:C$36;ПОИСКПОЗ(A2;Лист1!A$2:A$36;0)+4)
Автор - DV Дата добавления - 14.09.2012 в 18:24
ALARMus
Дата: Пятница, 14.09.2012, 18:29 |
Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
нет не всегда, но если прибавить к строке кода 6 (строк) то туда однозначно попадет только одна строка со значением "Итог 1:" и как следствие относиться к текущему (обрабатываемому) коду, а от нового кода будут просмотрены лишние строки, но они не будут содержать "Итог 1:" от него (от следующего за первым)
нет не всегда, но если прибавить к строке кода 6 (строк) то туда однозначно попадет только одна строка со значением "Итог 1:" и как следствие относиться к текущему (обрабатываемому) коду, а от нового кода будут просмотрены лишние строки, но они не будут содержать "Итог 1:" от него (от следующего за первым) ALARMus
Ответить
Сообщение нет не всегда, но если прибавить к строке кода 6 (строк) то туда однозначно попадет только одна строка со значением "Итог 1:" и как следствие относиться к текущему (обрабатываемому) коду, а от нового кода будут просмотрены лишние строки, но они не будут содержать "Итог 1:" от него (от следующего за первым) Автор - ALARMus Дата добавления - 14.09.2012 в 18:29
_Boroda_
Дата: Пятница, 14.09.2012, 18:29 |
Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16715
Репутация:
6504
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
Code
=ВПР("Итог 1:";ДВССЫЛ("Лист1!"&"B"&ПОИСКПОЗ(A2;Лист1!A:A;)&":"&"C"&ПОИСКПОЗ(A2;Лист1!A:A;)+6);2;)
Первый столбец должен быть не С, а В С такой поправкой Ваша формула тоже работает Code
=ВПР("Итог 1:";ДВССЫЛ("Лист1!"&("B"&ТЕКСТ((ПОИСКПОЗ(A2;Лист1!A:A));0))&":"&("C"&ТЕКСТ((ПОИСКПОЗ(A2;Лист1!A:A))+6;0)));2;ЛОЖЬ)
или так Code
=ВПР("Итог 1:";СМЕЩ(Лист1!B$1;ПОИСКПОЗ(A2;Лист1!A:A;)-1;;6;2);2;)
Code
=ВПР("Итог 1:";ДВССЫЛ("Лист1!"&"B"&ПОИСКПОЗ(A2;Лист1!A:A;)&":"&"C"&ПОИСКПОЗ(A2;Лист1!A:A;)+6);2;)
Первый столбец должен быть не С, а В С такой поправкой Ваша формула тоже работает Code
=ВПР("Итог 1:";ДВССЫЛ("Лист1!"&("B"&ТЕКСТ((ПОИСКПОЗ(A2;Лист1!A:A));0))&":"&("C"&ТЕКСТ((ПОИСКПОЗ(A2;Лист1!A:A))+6;0)));2;ЛОЖЬ)
или так Code
=ВПР("Итог 1:";СМЕЩ(Лист1!B$1;ПОИСКПОЗ(A2;Лист1!A:A;)-1;;6;2);2;)
_Boroda_
К сообщению приложен файл:
_1_1.xlsx
(14.6 Kb)
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Code
=ВПР("Итог 1:";ДВССЫЛ("Лист1!"&"B"&ПОИСКПОЗ(A2;Лист1!A:A;)&":"&"C"&ПОИСКПОЗ(A2;Лист1!A:A;)+6);2;)
Первый столбец должен быть не С, а В С такой поправкой Ваша формула тоже работает Code
=ВПР("Итог 1:";ДВССЫЛ("Лист1!"&("B"&ТЕКСТ((ПОИСКПОЗ(A2;Лист1!A:A));0))&":"&("C"&ТЕКСТ((ПОИСКПОЗ(A2;Лист1!A:A))+6;0)));2;ЛОЖЬ)
или так Code
=ВПР("Итог 1:";СМЕЩ(Лист1!B$1;ПОИСКПОЗ(A2;Лист1!A:A;)-1;;6;2);2;)
Автор - _Boroda_ Дата добавления - 14.09.2012 в 18:29
DV
Дата: Пятница, 14.09.2012, 19:00 |
Сообщение № 6
Группа: Друзья
Ранг: Обитатель
Сообщений: 286
Репутация:
194
±
Замечаний:
0% ±
Excel 2010 RUS
И все таки без ДВССЫЛ и промежуточных значений: Code
=ИНДЕКС(Лист1!C$2:C$36;ПОИСКПОЗ("Итог 1:";ИНДЕКС(Лист1!B$2:B$36;ПОИСКПОЗ(A2;Лист1!A$2:A$36;0)):Лист1!B$36;0)+ПОИСКПОЗ(A2;Лист1!A$2:A$36;0)-1)
упс. Пока писал, уже 3-я ВПР появилась)))
И все таки без ДВССЫЛ и промежуточных значений: Code
=ИНДЕКС(Лист1!C$2:C$36;ПОИСКПОЗ("Итог 1:";ИНДЕКС(Лист1!B$2:B$36;ПОИСКПОЗ(A2;Лист1!A$2:A$36;0)):Лист1!B$36;0)+ПОИСКПОЗ(A2;Лист1!A$2:A$36;0)-1)
упс. Пока писал, уже 3-я ВПР появилась))) DV
К сообщению приложен файл:
1_2_1.xls
(32.5 Kb)
Сообщение отредактировал DV - Пятница, 14.09.2012, 19:03
Ответить
Сообщение И все таки без ДВССЫЛ и промежуточных значений: Code
=ИНДЕКС(Лист1!C$2:C$36;ПОИСКПОЗ("Итог 1:";ИНДЕКС(Лист1!B$2:B$36;ПОИСКПОЗ(A2;Лист1!A$2:A$36;0)):Лист1!B$36;0)+ПОИСКПОЗ(A2;Лист1!A$2:A$36;0)-1)
упс. Пока писал, уже 3-я ВПР появилась))) Автор - DV Дата добавления - 14.09.2012 в 19:00
ALARMus
Дата: Понедельник, 17.09.2012, 15:55 |
Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
А как можно делать ПОИСКПОЗ если то что искать , к примеру, 234 (значение в А2), а в искомом диапазоне у всех кодов вначале 0, т.е. 0234
А как можно делать ПОИСКПОЗ если то что искать , к примеру, 234 (значение в А2), а в искомом диапазоне у всех кодов вначале 0, т.е. 0234 ALARMus
Сообщение отредактировал ALARMus - Понедельник, 17.09.2012, 15:58
Ответить
Сообщение А как можно делать ПОИСКПОЗ если то что искать , к примеру, 234 (значение в А2), а в искомом диапазоне у всех кодов вначале 0, т.е. 0234 Автор - ALARMus Дата добавления - 17.09.2012 в 15:55
Serge_007
Дата: Понедельник, 17.09.2012, 15:58 |
Сообщение № 8
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация:
2749
±
Замечаний:
±
Excel 2016
Code
=ПОИСКПОЗ(234;--A1:A10;)
формула массива или Code
=ПОИСКПОЗ("*234";A1:A10;)
Code
=ПОИСКПОЗ("?234";A1:A10;)
простая
Code
=ПОИСКПОЗ(234;--A1:A10;)
формула массива или Code
=ПОИСКПОЗ("*234";A1:A10;)
Code
=ПОИСКПОЗ("?234";A1:A10;)
простаяSerge_007
ЮMoney :41001419691823 | WMR :126292472390
Ответить
Сообщение Code
=ПОИСКПОЗ(234;--A1:A10;)
формула массива или Code
=ПОИСКПОЗ("*234";A1:A10;)
Code
=ПОИСКПОЗ("?234";A1:A10;)
простаяАвтор - Serge_007 Дата добавления - 17.09.2012 в 15:58
ALARMus
Дата: Понедельник, 17.09.2012, 16:04 |
Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
а если в ПОИСКПОЗ не само значение в кавычках, а указание на ячейку, которая содержит без 0 в начале. Я попробовал ПОИСКПОЗ("0"&A2 ;D2:E4)
а если в ПОИСКПОЗ не само значение в кавычках, а указание на ячейку, которая содержит без 0 в начале. Я попробовал ПОИСКПОЗ("0"&A2 ;D2:E4) ALARMus
Сообщение отредактировал ALARMus - Понедельник, 17.09.2012, 16:11
Ответить
Сообщение а если в ПОИСКПОЗ не само значение в кавычках, а указание на ячейку, которая содержит без 0 в начале. Я попробовал ПОИСКПОЗ("0"&A2 ;D2:E4) Автор - ALARMus Дата добавления - 17.09.2012 в 16:04
_Boroda_
Дата: Понедельник, 17.09.2012, 16:18 |
Сообщение № 10
Группа: Админы
Ранг: Местный житель
Сообщений: 16715
Репутация:
6504
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
Quote (ALARMus )
Я попробовал ПОИСКПОЗ("0"&A2;D2:E4)
Все правильно, только точку с запятой забыли ПОИСКПОЗ("0"&A2;D2:E4; )
Quote (ALARMus )
Я попробовал ПОИСКПОЗ("0"&A2;D2:E4)
Все правильно, только точку с запятой забыли ПОИСКПОЗ("0"&A2;D2:E4; )_Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Quote (ALARMus )
Я попробовал ПОИСКПОЗ("0"&A2;D2:E4)
Все правильно, только точку с запятой забыли ПОИСКПОЗ("0"&A2;D2:E4; )Автор - _Boroda_ Дата добавления - 17.09.2012 в 16:18
ALARMus
Дата: Понедельник, 17.09.2012, 16:20 |
Сообщение № 11
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
; в оригинале есть. dmn - на тестовом работало - перенес на рабочий файл не работает
; в оригинале есть. dmn - на тестовом работало - перенес на рабочий файл не работает ALARMus
Ответить
Сообщение ; в оригинале есть. dmn - на тестовом работало - перенес на рабочий файл не работает Автор - ALARMus Дата добавления - 17.09.2012 в 16:20
ALARMus
Дата: Понедельник, 17.09.2012, 16:31 |
Сообщение № 12
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
вот покрутил, что получилось Если в А2 впишу код 0234 - то ПОИСКПОЗ(А2;диапазон;) - правильно показывает номер строки А если в А2 оставлю 234 - то ПОИСКПОЗ("0"&A2;диапазон;) - пишет #Н/Д - при этом если нажать на кнопку функции то покажет что искать "0234" в диапазоне (и перечислен диапазон), в котором есть 0234
вот покрутил, что получилось Если в А2 впишу код 0234 - то ПОИСКПОЗ(А2;диапазон;) - правильно показывает номер строки А если в А2 оставлю 234 - то ПОИСКПОЗ("0"&A2;диапазон;) - пишет #Н/Д - при этом если нажать на кнопку функции то покажет что искать "0234" в диапазоне (и перечислен диапазон), в котором есть 0234 ALARMus
Ответить
Сообщение вот покрутил, что получилось Если в А2 впишу код 0234 - то ПОИСКПОЗ(А2;диапазон;) - правильно показывает номер строки А если в А2 оставлю 234 - то ПОИСКПОЗ("0"&A2;диапазон;) - пишет #Н/Д - при этом если нажать на кнопку функции то покажет что искать "0234" в диапазоне (и перечислен диапазон), в котором есть 0234 Автор - ALARMus Дата добавления - 17.09.2012 в 16:31
ALARMus
Дата: Понедельник, 17.09.2012, 16:46 |
Сообщение № 13
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
вот файлик
Ответить
Сообщение вот файлик Автор - ALARMus Дата добавления - 17.09.2012 в 16:46
_Boroda_
Дата: Понедельник, 17.09.2012, 16:51 |
Сообщение № 14
Группа: Админы
Ранг: Местный житель
Сообщений: 16715
Репутация:
6504
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
=ПОИСКПОЗ(--(9&A1);T) 0 и 9 вначале - это совершенно разные вещи. Если вначале числа 0 - это значит, что это не число, а текст, тогда ищем ТЕКСТ 0&A1. А если вначале 9, то это не текст, а ЧИСЛО, а мы ищем текст 9&A1. Для того, чтобы нормально искал, нужно преобразовать его в число двумя минусами, например. или =ПОИСКПОЗ(900000+A1;T)
=ПОИСКПОЗ(--(9&A1);T) 0 и 9 вначале - это совершенно разные вещи. Если вначале числа 0 - это значит, что это не число, а текст, тогда ищем ТЕКСТ 0&A1. А если вначале 9, то это не текст, а ЧИСЛО, а мы ищем текст 9&A1. Для того, чтобы нормально искал, нужно преобразовать его в число двумя минусами, например. или =ПОИСКПОЗ(900000+A1;T) _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение =ПОИСКПОЗ(--(9&A1);T) 0 и 9 вначале - это совершенно разные вещи. Если вначале числа 0 - это значит, что это не число, а текст, тогда ищем ТЕКСТ 0&A1. А если вначале 9, то это не текст, а ЧИСЛО, а мы ищем текст 9&A1. Для того, чтобы нормально искал, нужно преобразовать его в число двумя минусами, например. или =ПОИСКПОЗ(900000+A1;T) Автор - _Boroda_ Дата добавления - 17.09.2012 в 16:51
ALARMus
Дата: Понедельник, 17.09.2012, 16:56 |
Сообщение № 15
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
а почему так ?
Ответить
Сообщение а почему так ? Автор - ALARMus Дата добавления - 17.09.2012 в 16:56
Serge_007
Дата: Понедельник, 17.09.2012, 17:00 |
Сообщение № 16
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация:
2749
±
Замечаний:
±
Excel 2016
Потому что при конкатенации (&) получается текстовая строка ("922553"), а не число (922553)
Потому что при конкатенации (&) получается текстовая строка ("922553"), а не число (922553) Serge_007
ЮMoney :41001419691823 | WMR :126292472390
Ответить
Сообщение Потому что при конкатенации (&) получается текстовая строка ("922553"), а не число (922553) Автор - Serge_007 Дата добавления - 17.09.2012 в 17:00
ALARMus
Дата: Понедельник, 17.09.2012, 17:20 |
Сообщение № 17
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
так все же не все вышло гладко - с одной строкой все хорошо, но когда их много, то Опишу: для первых 3-х строк (различных значений) найдены соответствия в диапазоне, но если следующая строка №4 в диапазоне не находится, то почему то ПОИСКПОЗ ставит значение предыдущей (последней) найденной строки (в данном примере строки 3) и в итоге сумму берет из той же строки.
так все же не все вышло гладко - с одной строкой все хорошо, но когда их много, то Опишу: для первых 3-х строк (различных значений) найдены соответствия в диапазоне, но если следующая строка №4 в диапазоне не находится, то почему то ПОИСКПОЗ ставит значение предыдущей (последней) найденной строки (в данном примере строки 3) и в итоге сумму берет из той же строки. ALARMus
Ответить
Сообщение так все же не все вышло гладко - с одной строкой все хорошо, но когда их много, то Опишу: для первых 3-х строк (различных значений) найдены соответствия в диапазоне, но если следующая строка №4 в диапазоне не находится, то почему то ПОИСКПОЗ ставит значение предыдущей (последней) найденной строки (в данном примере строки 3) и в итоге сумму берет из той же строки. Автор - ALARMus Дата добавления - 17.09.2012 в 17:20
Serge_007
Дата: Понедельник, 17.09.2012, 17:25 |
Сообщение № 18
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация:
2749
±
Замечаний:
±
Excel 2016
Не надо описывать, надо прикладывать файл с проблемой
Не надо описывать, надо прикладывать файл с проблемой Serge_007
ЮMoney :41001419691823 | WMR :126292472390
Ответить
Сообщение Не надо описывать, надо прикладывать файл с проблемой Автор - Serge_007 Дата добавления - 17.09.2012 в 17:25
ALARMus
Дата: Понедельник, 17.09.2012, 17:27 |
Сообщение № 19
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
вот новая строка видимо цепляется за частичное соответствие, а нужно полное совпадение
вот новая строка видимо цепляется за частичное соответствие, а нужно полное совпадение ALARMus
Сообщение отредактировал ALARMus - Понедельник, 17.09.2012, 17:28
Ответить
Сообщение вот новая строка видимо цепляется за частичное соответствие, а нужно полное совпадение Автор - ALARMus Дата добавления - 17.09.2012 в 17:27
Serge_007
Дата: Понедельник, 17.09.2012, 17:34 |
Сообщение № 20
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация:
2749
±
Замечаний:
±
Excel 2016
Опять точку с запятой (; ) забыли? А утверждали ведь, что Quote (ALARMus )
; в оригинале есть.
Так надо: Code
=ПОИСКПОЗ(--(9&A1);T;)
Опять точку с запятой (; ) забыли? А утверждали ведь, что Quote (ALARMus )
; в оригинале есть.
Так надо: Code
=ПОИСКПОЗ(--(9&A1);T;)
Serge_007
ЮMoney :41001419691823 | WMR :126292472390
Ответить
Сообщение Опять точку с запятой (; ) забыли? А утверждали ведь, что Quote (ALARMus )
; в оригинале есть.
Так надо: Code
=ПОИСКПОЗ(--(9&A1);T;)
Автор - Serge_007 Дата добавления - 17.09.2012 в 17:34