5 / 5 / 0
Регистрация: 15.06.2015
Сообщений: 342
|
|
1 | |
Нахождение и подстановка числа из других вкладок по нескольким условиям18.07.2015, 15:10. Показов 3120. Ответов 53
Метки нет (Все метки)
Привет всем. Помогите пожалуйста сделать задачу.
В задаче будут задействованы столбцы E и S. выделено зелёным цветом Во вкладках с 1 по 17 такие же столбцы Е и S Нужно сравнивать значания(текст) в столбце Е со значением в столбце Е во всех других вкладках Нужно сравнивать значания(числа) в столбце S со значением в столбце S во всех других вкладках Если эти 2 условия выполнены, то в столбец V вводить значение, которое указано во вкладках напротив(в той же строке) привожу пример: Е22 имеет значение THUN - BASEL. Ищем его в других вкладках. Нашлось во вкладке 2 E15 смотрим совпадает ли второе условие. S22 =S22 dj второй вкладке. Значит подставляем значение V15 из второй вкладки в V22 лист1. на данный момент это 0 Заранее большое спасибо! Файл прикрепил. там всё более понятно:
0
|
18.07.2015, 15:10 | |
Ответы с готовыми решениями:
53
Нахождение уникальных значений из таблицы по нескольким условиям поиск и подстановка значения по заданным условиям Суммирование по нескольким условиям Поиск по нескольким условиям |
2080 / 1238 / 464
Регистрация: 20.12.2014
Сообщений: 3,237
|
|
20.07.2015, 14:02 | 21 |
Oleg395, проверьте этот вариант. Если будут неточности выделите и выложите. Это пока исправленный старый вариант с двумя условиями и столбцом V.
1
|
2080 / 1238 / 464
Регистрация: 20.12.2014
Сообщений: 3,237
|
|
20.07.2015, 14:38 | 22 |
Еще, к тому, про что говорил AntikBantik. Как быть, когда на Листе1 есть две одинаковых строки в столбце Е. Например, MACCLESFIELD - GRIMSBY встречается в 53 и 1188 строке. THUN - BASEL в 22 и 626. И у них разные значения в столбце S. Боюсь, даже самому крутому макросу не решить какие из них выбирать для сравнения с остальными листами Определитесь, что должно происходить в таком случае.
Добавлено через 6 минут Или каждая из этих строк будет самостоятельной и в других листах нужно искать совпадение и для той, и для другой?
1
|
5 / 5 / 0
Регистрация: 15.06.2015
Сообщений: 342
|
|
20.07.2015, 14:53 [ТС] | 23 |
chumich, попробую объяснить по порядку. Лист1 я разбил на 17 частей, для того чтобы было удбнее мне проводить свои "опыты". Опыты я провёл! Получил результаты на каждой из 17 частей, на каждой строке и т.д. а теперь нужно данные этих опытов собрать обратно в Лист1. понимаете?
Вот прикрепил файл: там ещё до объяснил с примером:
0
|
5 / 5 / 0
Регистрация: 15.06.2015
Сообщений: 342
|
|
20.07.2015, 14:57 [ТС] | 24 |
и ещё. на Листе1 есть 3-5 строк которых нет воообще не в одной из 17 частей. Предупреждаю! не знаю как поведёт макрос себя в этом случае если не найдёт совпадений в 17 частях, и что вставит в столбец Y(или V в вашем случае). главное чтобы ошибки не было и макрос доработал до конца. Пусть # вставит или ещё какую кракозябру.
0
|
83 / 60 / 21
Регистрация: 03.12.2014
Сообщений: 232
|
|
20.07.2015, 15:03 | 25 |
Это понятно, вопрос в другом, если нашел по 3 условиям в 2 листе и по 3 условиям в 4 листе то какую подставить?
1
|
2080 / 1238 / 464
Регистрация: 20.12.2014
Сообщений: 3,237
|
|
20.07.2015, 15:14 | 26 |
Ясно. Так вам по всем указанным столбцам делать совпадения или по трем? Разница в коде небольшая. А то, "аппетит приходит во время еды", - проще сразу сделать И еще, в столбце Y находится формула. Макрос ее уничтожит и вставит значение. Может быть, оставить вывод данных в V? Если я правильно понял, формула в Y автоматически изменит значение ячейки в этом случае.
Добавлено через 6 минут Если я правильно понял, такого быть не может Добавлено через 1 минуту Оставит пустое место.
1
|
5 / 5 / 0
Регистрация: 15.06.2015
Сообщений: 342
|
|
20.07.2015, 15:28 [ТС] | 27 |
AntikBantik, ту которая удовлетворяет ТРЁМ условиям! потому что та которая прошла два условия, а не прошла третье, это не наш брат близнец.
chumich, ОООО! разница не большая в коде? тогда делайте по всем столбцам тогда будет 100% попадание! т.е. переносить значение в столбец Y только тогда когда будет 100% попадание по всем условиям (столбцы Е Р Q R S). А по поводу кода в столбце Y, то хрен с ним с этим кодом . Пусть убирает этот код и вставляет число. А лучше всего знаете, что бы вставлял? не число, а а саму ссылку на то значение! Поняли что я имею ввиду? то есть если нашлось число "0" во вкладке 2 к примеру, то не "0" как текст переносился в столбец Y, а ссылка . Для примера THUN - BASEL :в Y всталялся бы не "0", а ( ='2'!$Y$15 ). Это было бы идеальным вариантом! Я на данный момент. Так делаю ВРУЧНУЮ! Ручками. сам ищу и делаю ссылки. за 2 дня только 30% выполнил. Геморой ещё тот. глаза болят. Устаёшь концентрироваться, чтобы не ошибиться щёлкнуть мимо нужной ячейки... Добавлено через 13 минут chumich, Сделайте пожалуqста для столбца Y. или объясниnt где в макросе потом поменять. Чтоб значения брались из и в столбец Y. Я вроде изменил 22 на 25 в макросе(это я догадался, что 22 это V, ну а собственно Y это уже 25 тый столбец). но макрос отработал абсолютно неверно. Может надо ещё что то менять в макросе.
0
|
83 / 60 / 21
Регистрация: 03.12.2014
Сообщений: 232
|
|
20.07.2015, 15:30 | 28 |
Oleg395, проверяйте, вроде все успел,
Не по теме: раб день подошел к концу :yahoo: Не по теме: я похоже что то упустил, условия поменялись что ли?
1
|
5 / 5 / 0
Регистрация: 15.06.2015
Сообщений: 342
|
|
20.07.2015, 15:39 [ТС] | 29 |
chumich, да и что будет если вкладки будут называться не 1-17, а буквами или другими числами? их будет не 17 а к примеру 25 или 8?
Добавлено через 7 минут AntikBantik, спасибо. но ваш вариант. не работает. Да условия уже давно я изменил . теперь будем делать чтобы совпадали значения в столбцах: Е Р Q R S. т.е. аж 5 условий. так будет находить без промаха! и выводить в столбец Y, а не V. И желательно ссылки. Хотя если ссылки тяжело будет для макроса, то можно просто значения. вот посмотрите это последнее редактирование задания что я прикреплял в файле, там красным по белому: https://www.cyberforum.ru/atta... 1437393219
0
|
2080 / 1238 / 464
Регистрация: 20.12.2014
Сообщений: 3,237
|
|
20.07.2015, 15:49 | 30 |
Буквами не желательно, лучше цифрами и по-порядку (кроме листа Лист1 - его как угодно зовите). Количество не важно - меняется размерность массива массивов и верхний предел счетчика в цикле.
1
|
83 / 60 / 21
Регистрация: 03.12.2014
Сообщений: 232
|
|
20.07.2015, 15:49 | 31 |
Ну ок, в поинципе в моем макросе можно еще вставить массивы и все, и на счет листов, в моем макросе есть цикл которы не привязан на название листов
1
|
2080 / 1238 / 464
Регистрация: 20.12.2014
Сообщений: 3,237
|
|
20.07.2015, 15:57 | 32 |
Oleg395, вы уверены, что там есть хотя бы один вариант совпадающий по всем параметрам? Я сделал макрос, но он выдает все значения пустыми. Если нетрудно, приведите какой-нибудь вариант.
1
|
5 / 5 / 0
Регистрация: 15.06.2015
Сообщений: 342
|
|
20.07.2015, 16:04 [ТС] | 33 |
AntikBantik, так ваш макрос не рабочий! он не верно делает всё. да и нужно теперь с 5 условиями и чтоб в столбец Y из Y вытаскивал данные.
chumich, о блин. Оказывается я эти данные значения P и Q из вкладок удалил некоторых. Вот E R S точно есть везде. Сделайте по 3 условиям, и скажите как добавлять 4 и 5 условия. Я сам потом добавлю под свой файл.
0
|
2080 / 1238 / 464
Регистрация: 20.12.2014
Сообщений: 3,237
|
|
20.07.2015, 16:04 | 34 |
Нет там такого варианта Столбец Q почти везде 0, Р - вообще отсутствует. Так что проверить не смогу
1
|
5 / 5 / 0
Регистрация: 15.06.2015
Сообщений: 342
|
|
20.07.2015, 16:07 [ТС] | 35 |
AntikBantik, Вы лучше поработайте над идеей, чтобы макрос chumich, не был привязан к названию листов. А вы chumich, пока скиньте сюда свой вариант, который вы не можете проверить. я проверю на своём полном другом файле где есть все данные.
0
|
83 / 60 / 21
Регистрация: 03.12.2014
Сообщений: 232
|
|
20.07.2015, 16:11 | 36 |
У меня в коде все есть, воркшит.каунт считаем количество листов и перечисляем не привязывая цикл к названию листа. Макрос работал по трем учловтям столбец 5 15 и 25 названия не помню. На вашем 1 примере где нужно было подставить 0 (не вижу файла еду домой), протестите по 3 условиям 5 15 и 25 столбцы если работает то в моем коде надо добавить еще массивы для проверок
1
|
Чорумфанин
346 / 346 / 320
Регистрация: 06.03.2014
Сообщений: 899
|
|
20.07.2015, 16:29 | 37 |
Коллеги, как вариант: на всех листах в дополнительную колонку сцепить все нужные ячейки, по которым нужен поиск.
Например =concatenate(A1;B1;P1;Q1), получаем точную строку, которую и надо искать (если листов много - можно и макросом). Потом на листе, где нужен результат - искать тем же VLOOKUP. При этом варианте элементарно добавлять условия для поиска (хоть 7 хоть 10 ячеек). Правда результаты поиска будут для каждого листа в своей колонке.
1
|
5 / 5 / 0
Регистрация: 15.06.2015
Сообщений: 342
|
|
20.07.2015, 16:35 [ТС] | 38 |
AntikBantik, тяжеловатый макрос у вас. работал минут 5-6. Но посчитал не верно. только походу по одному условию искал и подставлял самое первое попавшееся значение. Да и к тому же нужно в Y-Y. а не в V-V.
chumich, я эти данные значения P и Q из вкладок удалил некоторых. Вот E R S точно есть везде. Сделайте по 3 условиям, и скажите как добавлять 4 и 5 условия. Я сам потом добавлю под свой файл. Я выше написал. наверно пропустили. kasan, вы не нашли вариант ускорить ваш прошлый макрос? а то та тема остаётся открытой.
0
|
83 / 60 / 21
Регистрация: 03.12.2014
Сообщений: 232
|
|
20.07.2015, 16:59 | 39 |
ну так цикл в цикле и в еще одном цикле
а здесь пжл поподробней, я та думал три условия это включая столбец Y а если есть совпадения то вставлять в V
по идее нет, искал по 3 если нет по 3 то по 2 и если по 2 нет то по 1
Не по теме: я если честно запутался по каким столбам строить условия и какой столбец в случае чего подставлять :umnik: Добавлено через 10 минут Oleg395, я беру сохраняю Ваш файл, читаю в нем условия + еще добавляю условие по столбцу Y и на примере THUN - BASEL нахожу два совпадения, дальше капаю глубже понимаю что по условию 2-я запись не соответствует (это значение 226,1), зато подходит 1-я запись со значением 0 как Вы и указали в примере. Так же и мои макрос нашел его, в чем ошибка моя?!
1
|
2080 / 1238 / 464
Регистрация: 20.12.2014
Сообщений: 3,237
|
|
20.07.2015, 17:11 | 40 |
Oleg395, держите два варианта: 2г - по пяти параметрам, 2д - по трем. Оба выводят в Y ссылку в виде формулы, но без знака "равно", т.е. !3!Y25. C "равно" никак что-то не получилось - выдает ошибку. Надо бы прописать нажатие Enter в коде, но не нашел ничего путного. Может кто-то подскажет как прописать. Но, думаю и такой вариант сильно облегчит вашу задачу. Протестируйте, если будут неточности - выложите.
1
|
20.07.2015, 17:11 | |
20.07.2015, 17:11 | |
Помогаю со студенческими работами здесь
40
Фильтрация по нескольким условиям Select по нескольким условиям Суммирование по нескольким условиям Поиск по нескольким условиям Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |