Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сравнение двух столбцов, сдвиг вниз, соответствие / 25 сообщений из 55, страница 1 из 3
17.02.2010, 09:56
    #36474162
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Здравствуйте уважаемые знатоки
Возможно вопрос уже обсуждался, но по поиску я не нашла, поэтому ткните носом, если не увидела)))

Имеется несколько столбцов в excel с информацией такого типа:

номер1 номер2
123 123
345 567
567 987
789
987

Необходимо сверить два этих столбца, и удалить совпадающие строки, то есть в итоге должно остаться вот что:

номер1 номер2

345
789

Подскажите вариант действий, спасибо за внимание)))
...
Рейтинг: 0 / 0
17.02.2010, 10:11
    #36474197
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Такой вариант - разнести столбцы на разные листы, затем посчитать в каждом количество совпадений с другим формулой COUNTIF, удалить строки с >0
...
Рейтинг: 0 / 0
17.02.2010, 10:34
    #36474242
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
ам...спасибо огромное, а в реализации как? просто я совсем новичок в программировании, хочется как-то оптимизировать свою работу, чтобы она не занимала много времени по сверке. сейчас я сижу и сверяю строки вручную (((
...
Рейтинг: 0 / 0
17.02.2010, 10:42
    #36474259
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Если это надо делать каждый день, тогда есть смысл макрос написать, но для этого надо видеть файл с данными, сторок на 10 хотя бы.
Еще можно сложить оба столбца в один (если количество и эксель позволяют), рассортировать, затем удалить все строки, где рядом больше 1 одинакового значения. Последний этап кодом.
...
Рейтинг: 0 / 0
17.02.2010, 10:48
    #36474275
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Вот примерный список с данными

NLS ISN1 ISN2 SUM KOD DATA
113001907 01031838290 01031838290 13.090 82 01.01.2010
113002177 01031879304 01031881190 31.960 81 01.01.2010
113010798 01031880289 01031934084 79.310 81 01.01.2010
113003511 01031880794 01031935692 28.490 150 01.01.2010
113010292 01031881190 01032099081 46.200 82 01.01.2010
113007946 01031881897 01035925305 17.900 82 01.01.2010
113004011 01031934084 01035926610 20.790 128 01.01.2010
113001986 01031935692 01036594313 187.880 84 01.01.2010
113007346 01031936088 01036596620 30.240 83 01.01.2010
113007464 01031938496 01036600888 73.750 82 01.01.2010
113019226 01031939296 01036611085 251.790 81 01.01.2010
113008578 01032099081 01036616196 21.560 82 01.01.2010
113012333 01032102953 01036702593 12.320 83 01.01.2010

сравнивать необходимо ISN1 и ISN2, оставлять те, которые есть в двух столбцах, удалять те, которые есть только в ISN1
на всякий случай прикладываю файлик в xls
...
Рейтинг: 0 / 0
17.02.2010, 10:52
    #36474285
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Концепция поменялась? :)
Сортировать можно?
Если да, то тут кода и не надо, руками и формулой можно обойтись.
...
Рейтинг: 0 / 0
17.02.2010, 10:52
    #36474286
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Neosky, из примера следует, что задачу ставите неверно.
"Нужно удалять не совпадающие строки " - "Нужно сформировать список неповторяющихся значений ".
Мысль правильно понята? :)
...
Рейтинг: 0 / 0
17.02.2010, 11:01
    #36474309
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
И что делать с теми значениями, которые есть только в ISN2?
...
Рейтинг: 0 / 0
17.02.2010, 11:06
    #36474327
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Т.е. надо оставить строки, где в обоих столбцах есть значения, которые есть во втором столбце?
Таких строк всего 2:
113001907 01031838290 01031838290 13.090 82 01.01.2010
113010292 01031881190 01032099081 46.200 82 01.01.2010
Но вряд ли это то, что надо...
...
Рейтинг: 0 / 0
17.02.2010, 11:09
    #36474335
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
vikttur простите, у меня опыта в постановке задач маловато)))

Hugo121, нет, концепция та же, просто в первом посте не дала полную информацию по файлу. Насчет сортировки не знаю, мне главное, чтобы удалились строки, в которых совпадает ISN2 с ISN1, а уникальные в ISN1 остались

Кстати, в ISN2 нет уникальных от ISN1 значений
...
Рейтинг: 0 / 0
17.02.2010, 11:15
    #36474354
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Hugo121Т.е. надо оставить строки, где в обоих столбцах есть значения, которые есть во втором столбце?
Таких строк всего 2:
113001907 01031838290 01031838290 13.090 82 01.01.2010
113010292 01031881190 01032099081 46.200 82 01.01.2010
Но вряд ли это то, что надо...

наоборот, удалить совпадающие, должно сначала получиться так:

NLS ISN1 ISN2 SUM KOD DATA

113001907 01031838290 01031838290 13.090 82 01.01.2010
113002177 01031879304 31.960 81 01.01.2010
113010798 01031880289 79.310 81 01.01.2010
113003511 01031880794 28.490 150 01.01.2010
113010292 01031881190 01031881190 46.200 82 01.01.2010
113007946 01031881897 17.900 82 01.01.2010
113004011 01031934084 01031934084 20.790 128 01.01.2010
113001986 01031935692 01031935692 187.880 84 01.01.2010
113007346 01031936088 30.240 83 01.01.2010
113007464 01031938496 73.750 82 01.01.2010
113019226 01031939296 251.790 81 01.01.2010
113008578 01032099081 01032099081 21.560 82 01.01.2010
113012333 01032102953 12.320 83 01.01.2010

а в итоге остаться так:
NLS ISN1 ISN2 SUM KOD DATA


113002177 01031879304 31.960 81 01.01.2010
113010798 01031880289 79.310 81 01.01.2010
113003511 01031880794 28.490 150 01.01.2010

113007946 01031881897 17.900 82 01.01.2010

113007346 01031936088 30.240 83 01.01.2010
113007464 01031938496 73.750 82 01.01.2010
113019226 01031939296 251.790 81 01.01.2010

113012333 01032102953 12.320 83 01.01.2010
...
Рейтинг: 0 / 0
17.02.2010, 11:16
    #36474356
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
некрасивое сообщение получилось, сейчас файлик приложу
...
Рейтинг: 0 / 0
17.02.2010, 11:20
    #36474373
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
вот так должно получиться:
...
Рейтинг: 0 / 0
17.02.2010, 11:59
    #36474527
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Ну если надо именно так, то это делается одной формулой - в G3 =COUNTIF(C:C;B3), тянем вниз, сортируем, удаляем все, где не 0.
...
Рейтинг: 0 / 0
17.02.2010, 12:07
    #36474546
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Hugo121Ну если надо именно так, то это делается одной формулой - в G3 =COUNTIF(C:C;B3), тянем вниз, сортируем, удаляем все, где не 0.

попыталась так сделать - пишет ошибку - недопустимое имя. Что я не учла?
...
Рейтинг: 0 / 0
17.02.2010, 12:11
    #36474560
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
В русском экселе СЧЁТЕСЛИ()
...
Рейтинг: 0 / 0
17.02.2010, 12:12
    #36474564
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
И наверное вместо ";" надо ","
...
Рейтинг: 0 / 0
17.02.2010, 12:18
    #36474585
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Точно, счетесли, но не запятую, а всетаки npg)))) В этом случае 0 обозначаются строки, которые нужно оставить)))
Спасибо огромное)
Обычно на форумах есть какое-то "спасибо", которым можно поблагодарить, а здесь пока не вижу...
...
Рейтинг: 0 / 0
17.02.2010, 12:20
    #36474592
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Итого - если строку
сравнивать необходимо ISN1 и ISN2, оставлять те, которые есть в двух столбцах, удалять те, которые есть только в ISN1
читать как
сравнивать необходимо ISN1 и ISN2, оставлять те, которые есть только в ISN1
то сразу видно, как решать вопрос.
...
Рейтинг: 0 / 0
17.02.2010, 12:24
    #36474604
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
А с помощью чего можно удалить массово строки, значение по которым в определенной ячейке >0?
...
Рейтинг: 0 / 0
17.02.2010, 12:28
    #36474618
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Можно конечно макросом, но в этом случае несложно отсортировать по столбцу с формулой и удалить строки вручную, если конечно их не десятки тысяч. Если много, можно код написать под эту задачу.
...
Рейтинг: 0 / 0
17.02.2010, 12:56
    #36474735
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Например такой, только удалить, когда уже есть значения формул:
Option Explicit
Sub DelZnac()
Dim x&, y&
Dim ws As Worksheet

Set ws = ActiveSheet
With ws
x = .UsedRange.Rows.Count
For y = x To 1 Step -1
If .Cells(y, 7).Value > 0 Then .Rows(y).EntireRow.Delete
Next
End With
End Sub
...
Рейтинг: 0 / 0
17.02.2010, 13:12
    #36474810
Neosky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Спасибо огромное, сейчас попробую
...
Рейтинг: 0 / 0
17.02.2010, 13:31
    #36474893
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Если и впрямь строк много:

Option Explicit
Sub DelZnac()
Application.ScreenUpdating = 0
Dim x&, y&
Dim ws As Worksheet

Set ws = ActiveSheet
With ws
x = .UsedRange.Rows.Count
Range("G1").Formula = "=COUNTIF(C:C,B1)"
Range("G1").AutoFill Destination:=Range("G1:G" & x), Type:=xlFillDefault
For y = x To 1 Step -1
If .Cells(y, 7).Value > 0 Then .Rows(y).EntireRow.Delete
If y Mod 100 = 0 Then Application.StatusBar = "Working On Row " & y ' ÷ņīį āčäåņü ļšīöåńń
Next
End With
ws.Columns(7).Clear
Application.ScreenUpdating = 1
Application.StatusBar = False

End Sub

Всё автоматически - и формула, и удалить, и удалить саму формулу...
...
Рейтинг: 0 / 0
17.02.2010, 13:32
    #36474898
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух столбцов, сдвиг вниз, соответствие
Под кракозябрами скрывается " ' чтоб видеть процесс " :)
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сравнение двух столбцов, сдвиг вниз, соответствие / 25 сообщений из 55, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]