Сравнение чисел, диапазон которых указан в двух ячейках
bboohh
Дата: Пятница, 06.01.2017, 19:52 |
Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Здраствуйте, думал, что решение простое, но ничего не нашел. Можно ли решить подобную задачу без использования макросов. Имеется таблица с тремя столбцами. Значения первых двух - переменные натуральные числа. Значение первого столбца - начало диапазона чисел,второго - конец диапазона. Третий - количество чисел в диапазоне, заданном значениями ячеек первых двух столбцов. Задача такая, нужна проверка диапазона чисел, заданных значениями ячеек первых двух столбцов на каждой строке, на пересечение с таким диапазоном в других строках. Например:Имеем 4 строки с переменными значениями:A3=25, B3=28, A4=60, B4=65, A5=100, B5=103, A6=58, B6=63. То есть, исходя из таблицы, имеем 4 диапазона натуральных чисел: 1={25;26;27;28}, 2={60;61;62;63;64;65}, 3={100;101;102;103}, 4={58;59;60;61;62;63}. Нужно сверить диапазон каждой строки с диапазонами на других строках. И, если диапазон на строке пересекается с другим, выводить в третьем стобце сообщение "ошибка", вместо количества чисел. В примере, второй диапазон пересекается с четвертым, то есть совпадают числа 60, 61, 62 ,63, значит в ячейке C4 должно быть "ошибка" , так же как и в C6 . Есть какие-нибудь идеи как это можно реализовать?
Здраствуйте, думал, что решение простое, но ничего не нашел. Можно ли решить подобную задачу без использования макросов. Имеется таблица с тремя столбцами. Значения первых двух - переменные натуральные числа. Значение первого столбца - начало диапазона чисел,второго - конец диапазона. Третий - количество чисел в диапазоне, заданном значениями ячеек первых двух столбцов. Задача такая, нужна проверка диапазона чисел, заданных значениями ячеек первых двух столбцов на каждой строке, на пересечение с таким диапазоном в других строках. Например:Имеем 4 строки с переменными значениями:A3=25, B3=28, A4=60, B4=65, A5=100, B5=103, A6=58, B6=63. То есть, исходя из таблицы, имеем 4 диапазона натуральных чисел: 1={25;26;27;28}, 2={60;61;62;63;64;65}, 3={100;101;102;103}, 4={58;59;60;61;62;63}. Нужно сверить диапазон каждой строки с диапазонами на других строках. И, если диапазон на строке пересекается с другим, выводить в третьем стобце сообщение "ошибка", вместо количества чисел. В примере, второй диапазон пересекается с четвертым, то есть совпадают числа 60, 61, 62 ,63, значит в ячейке C4 должно быть "ошибка" , так же как и в C6 . Есть какие-нибудь идеи как это можно реализовать? bboohh
Сообщение отредактировал bboohh - Пятница, 06.01.2017, 19:55
Ответить
Сообщение Здраствуйте, думал, что решение простое, но ничего не нашел. Можно ли решить подобную задачу без использования макросов. Имеется таблица с тремя столбцами. Значения первых двух - переменные натуральные числа. Значение первого столбца - начало диапазона чисел,второго - конец диапазона. Третий - количество чисел в диапазоне, заданном значениями ячеек первых двух столбцов. Задача такая, нужна проверка диапазона чисел, заданных значениями ячеек первых двух столбцов на каждой строке, на пересечение с таким диапазоном в других строках. Например:Имеем 4 строки с переменными значениями:A3=25, B3=28, A4=60, B4=65, A5=100, B5=103, A6=58, B6=63. То есть, исходя из таблицы, имеем 4 диапазона натуральных чисел: 1={25;26;27;28}, 2={60;61;62;63;64;65}, 3={100;101;102;103}, 4={58;59;60;61;62;63}. Нужно сверить диапазон каждой строки с диапазонами на других строках. И, если диапазон на строке пересекается с другим, выводить в третьем стобце сообщение "ошибка", вместо количества чисел. В примере, второй диапазон пересекается с четвертым, то есть совпадают числа 60, 61, 62 ,63, значит в ячейке C4 должно быть "ошибка" , так же как и в C6 . Есть какие-нибудь идеи как это можно реализовать? Автор - bboohh Дата добавления - 06.01.2017 в 19:52
Nic70y
Дата: Пятница, 06.01.2017, 20:19 |
Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 8988
Репутация:
2361
±
Замечаний:
0% ±
Excel 2010
вдруг правильноКод
=ЕСЛИ((СУММПРОИЗВ((A3<=B$3:B$9)*(A3>=A$3:A$9)+(B3>=A$3:A$9)*(B3<=B$3:B$9))>2)*(A3<>"");"ошибка";"")
вдруг правильноКод
=ЕСЛИ((СУММПРОИЗВ((A3<=B$3:B$9)*(A3>=A$3:A$9)+(B3>=A$3:A$9)*(B3<=B$3:B$9))>2)*(A3<>"");"ошибка";"")
Nic70y
ЮMoney 41001841029809
Ответить
Сообщение вдруг правильноКод
=ЕСЛИ((СУММПРОИЗВ((A3<=B$3:B$9)*(A3>=A$3:A$9)+(B3>=A$3:A$9)*(B3<=B$3:B$9))>2)*(A3<>"");"ошибка";"")
Автор - Nic70y Дата добавления - 06.01.2017 в 20:19
bboohh
Дата: Пятница, 06.01.2017, 20:40 |
Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Nic70y , Спасибо, формула работает как нужно. Только вот не понимаю, как она работает. Не могли бы вы поподробней объяснить, что происходит в этой формуле?
Nic70y , Спасибо, формула работает как нужно. Только вот не понимаю, как она работает. Не могли бы вы поподробней объяснить, что происходит в этой формуле?bboohh
Сообщение отредактировал bboohh - Пятница, 06.01.2017, 20:47
Ответить
Сообщение Nic70y , Спасибо, формула работает как нужно. Только вот не понимаю, как она работает. Не могли бы вы поподробней объяснить, что происходит в этой формуле?Автор - bboohh Дата добавления - 06.01.2017 в 20:40
Nic70y
Дата: Пятница, 06.01.2017, 20:54 |
Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 8988
Репутация:
2361
±
Замечаний:
0% ±
Excel 2010
если B3>=A$3:A$9 и одновременно B3<=B$3:B$9 значит B3 входит в диапазон, аналогично и с A3(B3>=A$3:A$9)*(B3<=B$3:B$9)
поскольку A3 и B3 полюбому входят в свой же диапазон будет мин 1+1=2, поэтому проверяем >2 проверка есть ли данные в строках, иначе формула примет "пустоту" за 0 [p.s.] что-то форум косячит при редактировании сооб. при наличии цитат[/p.s.]
если B3>=A$3:A$9 и одновременно B3<=B$3:B$9 значит B3 входит в диапазон, аналогично и с A3(B3>=A$3:A$9)*(B3<=B$3:B$9)
поскольку A3 и B3 полюбому входят в свой же диапазон будет мин 1+1=2, поэтому проверяем >2 проверка есть ли данные в строках, иначе формула примет "пустоту" за 0 [p.s.] что-то форум косячит при редактировании сооб. при наличии цитат[/p.s.] Nic70y
ЮMoney 41001841029809
Сообщение отредактировал Nic70y - Пятница, 06.01.2017, 21:00
Ответить
Сообщение если B3>=A$3:A$9 и одновременно B3<=B$3:B$9 значит B3 входит в диапазон, аналогично и с A3(B3>=A$3:A$9)*(B3<=B$3:B$9)
поскольку A3 и B3 полюбому входят в свой же диапазон будет мин 1+1=2, поэтому проверяем >2 проверка есть ли данные в строках, иначе формула примет "пустоту" за 0 [p.s.] что-то форум косячит при редактировании сооб. при наличии цитат[/p.s.] Автор - Nic70y Дата добавления - 06.01.2017 в 20:54
Nic70y
Дата: Пятница, 06.01.2017, 21:08 |
Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 8988
Репутация:
2361
±
Замечаний:
0% ±
Excel 2010
Неправильная формула оказалась
Неправильная формула оказалась Nic70y
ЮMoney 41001841029809
Ответить
Сообщение Неправильная формула оказалась Автор - Nic70y Дата добавления - 06.01.2017 в 21:08
bboohh
Дата: Пятница, 06.01.2017, 21:11 |
Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Я тоже заметил, только при других значениях
Я тоже заметил, только при других значениях bboohh
Ответить
Сообщение Я тоже заметил, только при других значениях Автор - bboohh Дата добавления - 06.01.2017 в 21:11
bboohh
Дата: Пятница, 06.01.2017, 21:13 |
Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
По той формуле вопрос: еслиЦитата
поскольку A3 и B3 полюбому входят в свой же диапазон будет мин 1+1=2
,то зачем тогда нужно :(A3<=B$3:B$9)*(A3>=A$3:A$9)+(B3>=A$3:A$9)*(B3<=B$3:B$9), оно ведь при любых значениях будет 2. Так я и не понял, как эта формула работает
По той формуле вопрос: еслиЦитата
поскольку A3 и B3 полюбому входят в свой же диапазон будет мин 1+1=2
,то зачем тогда нужно :(A3<=B$3:B$9)*(A3>=A$3:A$9)+(B3>=A$3:A$9)*(B3<=B$3:B$9), оно ведь при любых значениях будет 2. Так я и не понял, как эта формула работает bboohh
Сообщение отредактировал bboohh - Пятница, 06.01.2017, 21:15
Ответить
Сообщение По той формуле вопрос: еслиЦитата
поскольку A3 и B3 полюбому входят в свой же диапазон будет мин 1+1=2
,то зачем тогда нужно :(A3<=B$3:B$9)*(A3>=A$3:A$9)+(B3>=A$3:A$9)*(B3<=B$3:B$9), оно ведь при любых значениях будет 2. Так я и не понял, как эта формула работает Автор - bboohh Дата добавления - 06.01.2017 в 21:13
Nic70y
Дата: Пятница, 06.01.2017, 21:21 |
Сообщение № 8
Группа: Друзья
Ранг: Экселист
Сообщений: 8988
Репутация:
2361
±
Замечаний:
0% ±
Excel 2010
ну вот вроде бы правильная наверное массивная:Код
=ЕСЛИ(СЧЁТ(ЕСЛИ(A3<=B$3:B$9;ЕСЛИ(A$3:A$9<=B3;A$3:A$9)))>1;"ошибка";"")
оно ведь при любых значениях будет 2.
нет, при вхождении в другие диапазоны будет больше 2
ну вот вроде бы правильная наверное массивная:Код
=ЕСЛИ(СЧЁТ(ЕСЛИ(A3<=B$3:B$9;ЕСЛИ(A$3:A$9<=B3;A$3:A$9)))>1;"ошибка";"")
оно ведь при любых значениях будет 2.
нет, при вхождении в другие диапазоны будет больше 2 Nic70y
ЮMoney 41001841029809
Ответить
Сообщение ну вот вроде бы правильная наверное массивная:Код
=ЕСЛИ(СЧЁТ(ЕСЛИ(A3<=B$3:B$9;ЕСЛИ(A$3:A$9<=B3;A$3:A$9)))>1;"ошибка";"")
оно ведь при любых значениях будет 2.
нет, при вхождении в другие диапазоны будет больше 2 Автор - Nic70y Дата добавления - 06.01.2017 в 21:21
bboohh
Дата: Пятница, 06.01.2017, 21:31 |
Сообщение № 9
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Цитата
нет, при вхождении в другие диапазоны будет больше 2
точно, все разобрался. Что-то пошло не так
Цитата
нет, при вхождении в другие диапазоны будет больше 2
точно, все разобрался. Что-то пошло не так bboohh
Сообщение отредактировал bboohh - Пятница, 06.01.2017, 21:33
Ответить
Сообщение Цитата
нет, при вхождении в другие диапазоны будет больше 2
точно, все разобрался. Что-то пошло не так Автор - bboohh Дата добавления - 06.01.2017 в 21:31
Nic70y
Дата: Пятница, 06.01.2017, 21:38 |
Сообщение № 10
Группа: Друзья
Ранг: Экселист
Сообщений: 8988
Репутация:
2361
±
Замечаний:
0% ±
Excel 2010
{формула массива вводится одновременным нажатием Ctrl Shift Enter} , а не просто Enter, после чего она оказывается в фигурных скобках, при просмотре формулы в режиме редактирования эти скобки исчезают и формула "портится" - нужно опять Ctrl Shift Enter + добавил проверку на пустоту
{формула массива вводится одновременным нажатием Ctrl Shift Enter} , а не просто Enter, после чего она оказывается в фигурных скобках, при просмотре формулы в режиме редактирования эти скобки исчезают и формула "портится" - нужно опять Ctrl Shift Enter + добавил проверку на пустотуNic70y
ЮMoney 41001841029809
Ответить
Сообщение {формула массива вводится одновременным нажатием Ctrl Shift Enter} , а не просто Enter, после чего она оказывается в фигурных скобках, при просмотре формулы в режиме редактирования эти скобки исчезают и формула "портится" - нужно опять Ctrl Shift Enter + добавил проверку на пустотуАвтор - Nic70y Дата добавления - 06.01.2017 в 21:38
bboohh
Дата: Пятница, 06.01.2017, 21:43 |
Сообщение № 11
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Цитата
{формула массива вводится одновременным нажатием Ctrl Shift Enter}
Хм, странно, я вроде не редактировал столбик D в вашем файле. Как так получилось сам не понял.
Цитата
{формула массива вводится одновременным нажатием Ctrl Shift Enter}
Хм, странно, я вроде не редактировал столбик D в вашем файле. Как так получилось сам не понял.bboohh
Ответить
Сообщение Цитата
{формула массива вводится одновременным нажатием Ctrl Shift Enter}
Хм, странно, я вроде не редактировал столбик D в вашем файле. Как так получилось сам не понял.Автор - bboohh Дата добавления - 06.01.2017 в 21:43
bboohh
Дата: Пятница, 06.01.2017, 21:52 |
Сообщение № 12
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Цитата
+ добавил проверку на пустоту
Теперь, вроде, всё как надо Пойду мозговать как эта формула работает
Цитата
+ добавил проверку на пустоту
Теперь, вроде, всё как надо Пойду мозговать как эта формула работает bboohh
Ответить
Сообщение Цитата
+ добавил проверку на пустоту
Теперь, вроде, всё как надо Пойду мозговать как эта формула работает Автор - bboohh Дата добавления - 06.01.2017 в 21:52
Nic70y
Дата: Пятница, 06.01.2017, 21:54 |
Сообщение № 13
Группа: Друзья
Ранг: Экселист
Сообщений: 8988
Репутация:
2361
±
Замечаний:
0% ±
Excel 2010
бывает. думаю лучше формулу ввести, протянуть и защитить лист
бывает. думаю лучше формулу ввести, протянуть и защитить листNic70y
ЮMoney 41001841029809
Ответить
Сообщение бывает. думаю лучше формулу ввести, протянуть и защитить листАвтор - Nic70y Дата добавления - 06.01.2017 в 21:54
bboohh
Дата: Пятница, 06.01.2017, 21:56 |
Сообщение № 14
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Цитата
бывает. думаю лучше формулу ввести, протянуть и защитить лист
Так и сделаю. Только это лишь малая часть всех формул.
Цитата
бывает. думаю лучше формулу ввести, протянуть и защитить лист
Так и сделаю. Только это лишь малая часть всех формул.bboohh
Ответить
Сообщение Цитата
бывает. думаю лучше формулу ввести, протянуть и защитить лист
Так и сделаю. Только это лишь малая часть всех формул.Автор - bboohh Дата добавления - 06.01.2017 в 21:56