Здравствуйте. Подскажите, есть ли возможность решить задачу с помощью формулы или тут нужен макрос. ЗАДАЧА: Есть два диапазона: Диапазон 1, Диапазон 2. Каждый содержит два столбца Номер и Сумма. Нужно сравнить эти два диапазона так чтобы при нахождении в диапазоне 1 такого Номера как и в диапазоне 2 сравнивались находящиеся напротив них суммы, если суммы равны друг другу, то пропускать такие значения, в противном случает выводить их либо в Не совпадающие значения диапазона 1 или Не совпадающие значения диапазона 2, если значения Номера совпало, а суммы разные выводить их и в ту и другую колонку. Если же значение колонки Номер есть например в диапазоне 2 и нет в Диапазоне 1, то такие значения тоже выводить в соответствующую колонку. Заранее спасибо за совет.
Здравствуйте. Подскажите, есть ли возможность решить задачу с помощью формулы или тут нужен макрос. ЗАДАЧА: Есть два диапазона: Диапазон 1, Диапазон 2. Каждый содержит два столбца Номер и Сумма. Нужно сравнить эти два диапазона так чтобы при нахождении в диапазоне 1 такого Номера как и в диапазоне 2 сравнивались находящиеся напротив них суммы, если суммы равны друг другу, то пропускать такие значения, в противном случает выводить их либо в Не совпадающие значения диапазона 1 или Не совпадающие значения диапазона 2, если значения Номера совпало, а суммы разные выводить их и в ту и другую колонку. Если же значение колонки Номер есть например в диапазоне 2 и нет в Диапазоне 1, то такие значения тоже выводить в соответствующую колонку. Заранее спасибо за совет.mileonn
А Вам обязательно результат выводить в другие таблички, или можно в доп.столбец метки выводить? (типа: нет номера, разные суммы, полное совпадение или их числовые соответствия) Ещё можно УФ раскрасить строчки основных таблиц.
А Вам обязательно результат выводить в другие таблички, или можно в доп.столбец метки выводить? (типа: нет номера, разные суммы, полное совпадение или их числовые соответствия) Ещё можно УФ раскрасить строчки основных таблиц.Udik
вот вам барабан яд 41001231307558 wm R419131876897 udik1968@gmail.com
Сообщение отредактировал Udik - Пятница, 08.01.2016, 17:55
Udik, желательно именно выводить, так как объем номеров будет очень большой от 20000 тысяч и больше, и в таком случае придется все равно все просматривать. А если вывести все в отдельные таблицы, то можно отсмотреть только не совпавшие номера. Вот я и хочу понять это реально сделать формулой или надо макрос. Спасибо за помощь ))) И с праздниками Вас!
Udik, желательно именно выводить, так как объем номеров будет очень большой от 20000 тысяч и больше, и в таком случае придется все равно все просматривать. А если вывести все в отдельные таблицы, то можно отсмотреть только не совпавшие номера. Вот я и хочу понять это реально сделать формулой или надо макрос. Спасибо за помощь ))) И с праздниками Вас!mileonn
Макросом есть уже готовый инструмент - делал когда-то давно. Результат как заказано, но без форматов. Но код под паролем, пароля нет :( Файл сейчас показать тоже не могу.
Макросом есть уже готовый инструмент - делал когда-то давно. Результат как заказано, но без форматов. Но код под паролем, пароля нет :( Файл сейчас показать тоже не могу.Hugo
Нет, пароля там нет навсегда. Но сам инструмент работает. Дома должен быть. Но может быстрее кто другой напишет код - но в другой ветке. А формулами перебирать двадцать тысяч тысяч будет долго...
Нет, пароля там нет навсегда. Но сам инструмент работает. Дома должен быть. Но может быстрее кто другой напишет код - но в другой ветке. А формулами перебирать двадцать тысяч тысяч будет долго... Hugo
Hugo, сейчас попробую написать в другой раздел, может и правда быстрее будет. Но на всякий случай если найдете, напишите может это еще будет очень нужно. Спасибо за совет
Hugo, сейчас попробую написать в другой раздел, может и правда быстрее будет. Но на всякий случай если найдете, напишите может это еще будет очень нужно. Спасибо за советmileonn
там где нет пометок - нет совпадений. Можно фильтровать и копировать. Данные могут быть в разных файлах. Но на 20000 строк возможно можно будет успеть попить кофе/чаю или перекурить, что впрочем тоже иногда не плохо
там где нет пометок - нет совпадений. Можно фильтровать и копировать. Данные могут быть в разных файлах. Но на 20000 строк возможно можно будет успеть попить кофе/чаю или перекурить, что впрочем тоже иногда не плохо Hugo
Sub Мяу() arr = [b5:c19] arr1 = [e5:f19] Set odic = CreateObject("Scripting.Dictionary") For i = 1 To UBound(arr) odic.Item(arr(i, 1)) = arr(i, 2) Next For i = 1 To UBound(arr1) If odic.exists(arr1(i, 1)) Then If odic.Item(arr1(i, 1)) = arr1(i, 2) Then odic.Remove (arr1(i, 1)) End If Next [h5].Resize(odic.Count) = Application.Transpose(odic.keys) [i5].Resize(odic.Count) = Application.Transpose(odic.items) End Sub
[/vba]
[vba]
Код
Sub Мяу() arr = [b5:c19] arr1 = [e5:f19] Set odic = CreateObject("Scripting.Dictionary") For i = 1 To UBound(arr) odic.Item(arr(i, 1)) = arr(i, 2) Next For i = 1 To UBound(arr1) If odic.exists(arr1(i, 1)) Then If odic.Item(arr1(i, 1)) = arr1(i, 2) Then odic.Remove (arr1(i, 1)) End If Next [h5].Resize(odic.Count) = Application.Transpose(odic.keys) [i5].Resize(odic.Count) = Application.Transpose(odic.items) End Sub
Но у инструмента чуть выше есть тонкость с повторами - он всем ставит метки (одинаковые), а не только первым, правда метки у повторов подкрашивает. Если не годится - вот тот инструмент с закрытым пректом без пароля. Попробуйте - всё описание в файле. Делал 3 года назад кому-то... Если будут повторы значений в одной половине - лишние повторы будут выведены как несовпавшие. Но у Вас вероятно такого не будет, номера в примере все уникальные...
Но у инструмента чуть выше есть тонкость с повторами - он всем ставит метки (одинаковые), а не только первым, правда метки у повторов подкрашивает. Если не годится - вот тот инструмент с закрытым пректом без пароля. Попробуйте - всё описание в файле. Делал 3 года назад кому-то... Если будут повторы значений в одной половине - лишние повторы будут выведены как несовпавшие. Но у Вас вероятно такого не будет, номера в примере все уникальные...Hugo
Hugo, спасибо, пропустила одну строчку. Жаль покидать такой отличный сайт. Как с вами связаться в случае, если понадобиться? А то на этом сайте я вряд ли еще появлюсь. Ничего и кофе тоже можно попить, вручную все равно дольше )))
Hugo, спасибо, пропустила одну строчку. Жаль покидать такой отличный сайт. Как с вами связаться в случае, если понадобиться? А то на этом сайте я вряд ли еще появлюсь. Ничего и кофе тоже можно попить, вручную все равно дольше )))mileonn
Когда понадобиться - оно само почту напишет :) А чего это не появитесь тут больше? Появитесь! В любом случае можно написать в личку через этот сайт.
Когда понадобиться - оно само почту напишет :) А чего это не появитесь тут больше? Появитесь! В любом случае можно написать в личку через этот сайт.Hugo
Hugo, да я в соседней ветке тоже написала, думала что может быстрее получится так, ну и получила.... Так что может и не появлюсь )))) Но все равно спасибо Вам большое и с праздниками еще раз! [moder]Ничего Вы не получили. Я Вам даже замечание не влепил, просто поворчал немного. Приходите, никто Вас обижать не будет. Только Правила форума прочитайте и все хорошо будет.
Hugo, да я в соседней ветке тоже написала, думала что может быстрее получится так, ну и получила.... Так что может и не появлюсь )))) Но все равно спасибо Вам большое и с праздниками еще раз! [moder]Ничего Вы не получили. Я Вам даже замечание не влепил, просто поворчал немного. Приходите, никто Вас обижать не будет. Только Правила форума прочитайте и все хорошо будет.mileonn
Сообщение отредактировал _Boroda_ - Пятница, 08.01.2016, 23:07
На соседнюю ветку я подбил, моя вина - т.к. макросы там, а такие объёмы всёж лучше макросом ворочать. [moder]Сергей уже не раз уточнял, что в подобных ситуациях не нужно ни создавать новую тему, ни переносить старую. Где тема первоначально была, там обсуждение и продолжаем. Мила наверняка этих комментариев не видела, поэтому я просто вторую тему закрыл.
На соседнюю ветку я подбил, моя вина - т.к. макросы там, а такие объёмы всёж лучше макросом ворочать. [moder]Сергей уже не раз уточнял, что в подобных ситуациях не нужно ни создавать новую тему, ни переносить старую. Где тема первоначально была, там обсуждение и продолжаем. Мила наверняка этих комментариев не видела, поэтому я просто вторую тему закрыл.Hugo
Hugo, Да, нет все в порядке, я просто испугалась что нарушила какое то очень строгое правило и меня заблокируют. Так что спасибо всем, независимо ни от чего!!! Обычно я правило все помню, а тут наверное давно не перечитывала, вот и... Еще раз спасибо.
Hugo, Да, нет все в порядке, я просто испугалась что нарушила какое то очень строгое правило и меня заблокируют. Так что спасибо всем, независимо ни от чего!!! Обычно я правило все помню, а тут наверное давно не перечитывала, вот и... Еще раз спасибо.mileonn
RAN, здравствуйте. Хотелось бы задать такой вопрос, т.к. я пытаюсь разобраться в макросе. Он работает, но выводит только значения одного столбца. А вот значения второго он уже не показывает. Пример, в Диапазоне 1 есть Номер 39 и его суммовой показатель 2,5, а в Диапазоне 2 Номеру 39 соответствует суммовое значение 2,0. Когда макрос запускаю, то отражается только значение из первого диапазона. А хотелось бы видеть оба. Может я что не так делаю. Но это уже для меня, я конечно обложилась учебниками и прочим, но мне до этого уровня еще далековато. Еще раз спасибо.
RAN, здравствуйте. Хотелось бы задать такой вопрос, т.к. я пытаюсь разобраться в макросе. Он работает, но выводит только значения одного столбца. А вот значения второго он уже не показывает. Пример, в Диапазоне 1 есть Номер 39 и его суммовой показатель 2,5, а в Диапазоне 2 Номеру 39 соответствует суммовое значение 2,0. Когда макрос запускаю, то отражается только значение из первого диапазона. А хотелось бы видеть оба. Может я что не так делаю. Но это уже для меня, я конечно обложилась учебниками и прочим, но мне до этого уровня еще далековато. Еще раз спасибо.mileonn