Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 03.01.2009, 12:57   #1
ddimma
Новичок
Джуниор
 
Регистрация: 03.01.2009
Сообщений: 2
По умолчанию Помогите пожалуйста сравнить два столбца

Здравствуйте!Возможно где то уже есть ответ,но я не могу найти..
Помогите пожалуйста сравнить два столбца одной книги например A и B.
В столбце A и B перечень артикулов (пример:1011150).
Помогите пожалуйста мне надо если артикул в столбце A= артикулу в столбце B вывести все эти совпавшие артикула
или в столбце С или в другом.
Совпадения могут быть не в одной строчке(),мне интересны все совпадения по всем строчкам(т.е. если артикул в ячейке А1 равен артикулу в ячейке B150) чтобы выводился совпавший артикул
Напишите пожалуйста подробно что сделать я лузер.
Заранее вам очень благодарен!



--------- примечание модератора - вдруг кому пригодится --------------
Цитата:
Надстройка LOOKUP предназначена для сравнения и подстановки значений в таблицах Excel.

Если вам надо сравнить 2 таблицы (по одному столбцу, или по нескольким),
и для совпадающих строк скопировать значения выбранных столбцов из одной таблицы в другую,
надстройка «Lookup» поможет сделать это нажатием одной кнопки.


В настройках программы можно задать:
  • где искать сравниваемые файлы (использовать уже открытый файл, загружать файл по заданному пути, или же выводить диалоговое окно выбора файла)
  • с каких листов брать данные (варианты: активный лист, лист с заданным номером или названием)
  • какие столбцы сравнивать (можно задать несколько столбцов)
  • значения каких столбцов надо копировать в найденные строки (также можно указать несколько столбцов)

Скачать надстройку для сравнения таблиц Excel и копирования данных из одинаковых строк


Последний раз редактировалось EducatedFool; 30.09.2013 в 09:32.
ddimma вне форума
Старый 03.01.2009, 14:04   #2
cent
Пользователь
 
Аватар для cent
 
Регистрация: 26.12.2008
Сообщений: 73
По умолчанию

Вот код процедуры. Сравнивает Ячейки в столбцах А и В. Совпавшие артикулы выводит в столбец С.
Код:
Sub Сравнение()
Dim a As Long, b As Long, c As Long
    a = 1: c = 1
    Do While ActiveSheet.Cells(a, 1).Value <> 0
        b = 1
        Do While ActiveSheet.Cells(b, 2).Value <> 0
            If ActiveSheet.Cells(a, 1).Value = ActiveSheet.Cells(b, 2).Value Then
                ActiveSheet.Cells(c, 3).Value = ActiveSheet.Cells(b, 2).Value
                c = c + 1
                Exit Do
            End If
            b = b + 1
        Loop
        a = a + 1
    Loop
End Sub
Четко сформулированная задача - половина решения!
<= Спасибо оставляем в отзывах
cent вне форума
Старый 03.01.2009, 23:03   #3
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

В колонке С записывается строка типа:" чА чВ". Если ч не 0, значит есть такое значение в соседней колонке запись " 23А 5В" значит, что значение из колонки В нашлось в 23 строке колонки А, а значение из А нашлось в 5 строке колонки В.
Вложения
Тип файла: rar Повторы.rar (4.7 Кб, 154 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума
Старый 04.01.2009, 20:04   #4
ddimma
Новичок
Джуниор
 
Регистрация: 03.01.2009
Сообщений: 2
Радость Благодарность

Спасибо ребята, что помогаете таким неучам как я.
Спасибо!!!!!
ddimma вне форума
Старый 16.01.2009, 09:01   #5
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

4 cent
Код, конечно, рабочий, но это решение задачи "в лоб". Каждую ячейку одного столбца сравнивать с каждой ячейкой другого очень долго, особенно тогда, когда значений много, а повторений (а следовательно и досрочного выхода из цикла) мало. Считаю, что более рационально - создать коллекцию из уникальных значений одного столбца, затем добавлять в нее значения второго столбца, и если такое уже есть - записывать его в третий столбец. Таким образом, получится всего по одному "проходу" по каждому столбцу.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В прямоугольной матрице переставить столбцы так, чтобы сумма элементов столбца росла от первого столбца Aleo13 Помощь студентам 5 15.10.2008 18:34
Сравнить два файла Aleksandr Microsoft Office Excel 6 07.10.2008 00:22
Ув.Специалисты помогите сравнить списки lelik759 Microsoft Office Excel 2 25.09.2008 00:34
помогите! как сравнить BMP файлы? lenivec Мультимедиа в Delphi 20 14.11.2007 21:47