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

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

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

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

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

345
789

Подскажите вариант действий, спасибо за внимание)))
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474197
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такой вариант - разнести столбцы на разные листы, затем посчитать в каждом количество совпадений с другим формулой COUNTIF, удалить строки с >0
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474242
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ам...спасибо огромное, а в реализации как? просто я совсем новичок в программировании, хочется как-то оптимизировать свою работу, чтобы она не занимала много времени по сверке. сейчас я сижу и сверяю строки вручную (((
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474259
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если это надо делать каждый день, тогда есть смысл макрос написать, но для этого надо видеть файл с данными, сторок на 10 хотя бы.
Еще можно сложить оба столбца в один (если количество и эксель позволяют), рассортировать, затем удалить все строки, где рядом больше 1 одинакового значения. Последний этап кодом.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #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
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474285
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Концепция поменялась? :)
Сортировать можно?
Если да, то тут кода и не надо, руками и формулой можно обойтись.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474286
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Neosky, из примера следует, что задачу ставите неверно.
"Нужно удалять не совпадающие строки " - "Нужно сформировать список неповторяющихся значений ".
Мысль правильно понята? :)
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474309
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И что делать с теми значениями, которые есть только в ISN2?
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474327
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Т.е. надо оставить строки, где в обоих столбцах есть значения, которые есть во втором столбце?
Таких строк всего 2:
113001907 01031838290 01031838290 13.090 82 01.01.2010
113010292 01031881190 01032099081 46.200 82 01.01.2010
Но вряд ли это то, что надо...
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474335
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikttur простите, у меня опыта в постановке задач маловато)))

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

Кстати, в ISN2 нет уникальных от ISN1 значений
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #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
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474356
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
некрасивое сообщение получилось, сейчас файлик приложу
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474373
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот так должно получиться:
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474527
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну если надо именно так, то это делается одной формулой - в G3 =COUNTIF(C:C;B3), тянем вниз, сортируем, удаляем все, где не 0.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474546
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121Ну если надо именно так, то это делается одной формулой - в G3 =COUNTIF(C:C;B3), тянем вниз, сортируем, удаляем все, где не 0.

попыталась так сделать - пишет ошибку - недопустимое имя. Что я не учла?
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474560
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В русском экселе СЧЁТЕСЛИ()
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474564
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И наверное вместо ";" надо ","
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474585
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Точно, счетесли, но не запятую, а всетаки npg)))) В этом случае 0 обозначаются строки, которые нужно оставить)))
Спасибо огромное)
Обычно на форумах есть какое-то "спасибо", которым можно поблагодарить, а здесь пока не вижу...
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474592
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Итого - если строку
сравнивать необходимо ISN1 и ISN2, оставлять те, которые есть в двух столбцах, удалять те, которые есть только в ISN1
читать как
сравнивать необходимо ISN1 и ISN2, оставлять те, которые есть только в ISN1
то сразу видно, как решать вопрос.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474604
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А с помощью чего можно удалить массово строки, значение по которым в определенной ячейке >0?
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474618
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно конечно макросом, но в этом случае несложно отсортировать по столбцу с формулой и удалить строки вручную, если конечно их не десятки тысяч. Если много, можно код написать под эту задачу.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #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
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474810
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо огромное, сейчас попробую
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #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
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474898
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Под кракозябрами скрывается " ' чтоб видеть процесс " :)
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36474970
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, строк действительно много, пока порядка двух-трех тысяч, в будущем возможно увеличатся до 5-7 тысяч
так что этот макрос действительно важен...счас освобожу руки от других дел и попробую
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475080
-nail-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а обычный ВПР в вашем случае разве не поможет?
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475297
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а ВПР - это что?
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475401
-nail-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ищет значение в первом столбце массива таблицы и возвращает значение в той же строке из другого столбца массива таблицы.

Буква В в названии функции ВПР означает «вертикально». Функция ВПР используется вместо функции ГПР, если сравниваемые значения расположены в столбце слева от искомых данных.
--------------------------------------------------------------------------------------------------
в общем если во втором столбике есть значение которое содержится в первом столбике, она его найдет
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475475
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В H2
Код: plaintext
=VLOOKUP(B2;C:C; 1 ;FALSE)
и протянуть вниз.
Результат - удаляем все найденные, кодом можно сравнивать со вторым столбцом, при совпадении строку удалять.
Если строк много, можно сравнить два кода по скорости. Будет время, займусь ради интереса.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475490
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121, попробовала макрос прогнать, который и считает, и удаляет сразу...

Выдает ошибку runtime error 1001 и ругается на строчку Range("G1").Formula = "=COUNTIF(C:C;B1)" (желтым выделяет)

попробовала (раз у меня русский офис) заменить countif на СЧЕТЕСЛИ - все равно эта строка смущает. Что не так?
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475544
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А первый, который просто удаляет из рассчитанного столбца - работает!
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475582
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По поводу ошибки - замените ";" на ",".
ВПР выиграл, быстрее в 2 раза! На 5000 строк 20 сек.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
Sub DelVPRRezult()
Dim t
t = Timer
Application.ScreenUpdating =  0 
Dim x&, y&
Dim ws As Worksheet
Set ws = ActiveSheet
On Error Resume Next
With ws
    x = .UsedRange.Rows.Count
    Range("G1").Formula = "=VLOOKUP(B1,C:C,1,FALSE)"
    Range("G1").AutoFill Destination:=Range("G1:G" & x), Type:=xlFillDefault
    Application.Calculation = xlCalculationManual
    For y = x To  1  Step - 1 
    DoEvents
    If .Cells(y,  2 ).Value <> .Cells(y,  7 ).Value Then Else .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
Application.Calculation = xlCalculationAutomatic
Debug.Print Timer - t
End Sub
Для скорости отключил пересчёт при удалении строк и добавил DoEvents для комфорта :)
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475608
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Отчёт по скорости - удаление в обоих кодах занимает 14 сек., а вот расчёт формул...
Код: plaintext
1.
2.
3.
4.
 СЧЕТЕСЛИ -  25 . 20313  
 ИТОГО -  39 . 59375 

 ВПР -  6 . 15625  
 ИТОГО - 20 . 65625 
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475621
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В русском офисе в коде VBA:
Код: plaintext
Range("G1").FormulaLocal = "=СЧЕТЕСЛИ(C:C;B1)" 
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475800
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я что-то неправильно делаю наверное. Первый раз по файлику прогнала руками формулу счетесли и запустила короткий макрос по удалению строк - все отлично сработало.

Сейчас запускаю на второй файлик - абсолютно такой же, только цифири другие - у меня начинается какой-то непонятный процесс, который наглухо закрывает excel для доступа. То есть видно, что он что-то крутит - но очень долго, и в крайний раз написал мне какую-то неустранимую ошибку и вырубил комп. Потом причину ошибки система указала - неустранимый сбой
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475877
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код который зависает - короткий или длинный?
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475879
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Короткий. Первый раз вообще мигом пробежал! опомниться не успела. а вот второй - запустила после перезагрузки, трудится уже минут 20, не меньше.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475906
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NeoskyКороткий. Первый раз вообще мигом пробежал! опомниться не успела. а вот второй - запустила после перезагрузки, трудится уже минут 20, не меньше. - подозреваю, что там UsedRange.Rows.Count намного больше, чем строк с данными.
Внизу в статусной строке счётчик идёт?
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475917
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотя 20 минут - это в любом случае перебор для такой операции.
Приложил тестовый файл, там оба варианта кода, у меня работают, можете проверить.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475925
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121подозреваю, что там UsedRange.Rows.Count намного больше, чем строк с данными.
Внизу в статусной строке счётчик идёт?

счетчик пробежал до сотни, теперь внизу пусто
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475942
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121Хотя 20 минут - это в любом случае перебор для такой операции.
Приложил тестовый файл, там оба варианта кода, у меня работают, можете проверить.

спасибо, качнула, проверю уже завтра, т.к. этот видно, что работает - может к завтрашнему дню закончит?
а снова по диспетчеру его закрывать побаиваюсь - опять синий экран выдаст...а я все таки с сервера сижу...
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475948
-nail-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121,
а вот если еще и Microsoft Query сравнить, то он думаю в скорости намного выйграет, плюс никаких макросов, просто нажать Обновить и готово)
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475953
-nail-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
лучше использовать [a10000].end(xlup).row вместо UsedRange.Rows.Count, так думаю быстрее будет
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475968
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Neosky

счетчик пробежал до сотни, теперь внизу пусто - он специально считает сотнями, значит уже всё, готово
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475976
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-nail-Hugo121,
а вот если еще и Microsoft Query сравнить, то он думаю в скорости намного выйграет, плюс никаких макросов, просто нажать Обновить и готово) - ну так давай, учи нас, я там не разбираюсь почти, глядишь, и мне пригодится в работе...
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475982
Neosky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а почему тогда не дает с файлом работать? не заблокирован, просто что-то делает, а что - кто его знает
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36475991
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну попробуй просто esc подержать на файле, должен выйти из кода, если не повис наглухо.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36476015
-nail-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Данные - получить внешние данные - получить данные из внешней ДБ (new database query) - excel files - ищем свой файл, открываем - если не видно листов - "отображать системные объекты" (в свойствах)- на последнем шаге - edit query - добавить условие - [ISN1]<>[ISN2]. Готово.
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36476017
-nail-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121,

Ctrl+Break - остановит макрос
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36476647
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что-то с query не работает - там ведь [ISN1]<>[ISN2] сравнивается построчно, а нам надо на весь столбец, т.е. всё равно сперва надо формулу протянуть, а это основное время и занимает. Или как написать условие, что [ISN1]<>[ISN2_во_всём_столбце].
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36476780
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не пойму, на тестовом файле запрос
Код: plaintext
SELECT `Лист2$`.NLS, `Лист2$`.ISN1, `Лист2$`.ISN2, `Лист2$`.SUMMA, `Лист2$`.KOD_LG, `Лист2$`.DATA  FROM `Лист2$` WHERE (`Лист2$`.ISN1=`Лист2$`.FORMULA)
работает (отбирает 3000 значений из 5000), а вариант
Код: plaintext
SELECT `Лист2$`.NLS, `Лист2$`.ISN1, `Лист2$`.ISN2, `Лист2$`.SUMMA, `Лист2$`.KOD_LG, `Лист2$`.DATA  FROM `Лист2$` WHERE (`Лист2$`.ISN1<>`Лист2$`.FORMULA)
значения не выбирает, в чём ошибка?
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36476786
-nail-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да, ок, согласен, не дочитал условие
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36476807
-nail-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121,
если в Formula - текстовое значение - попробовать использовать не <> а not like, если в поле есть НД - попрообвать заменить на 0 например как-то так:если(еошибка(ВПР(...));0;ВПР()) и в запросе поставить
WHERE (`Лист2$`.FORMULA=0)
...
Рейтинг: 0 / 0
Сравнение двух столбцов, сдвиг вниз, соответствие
    #36476917
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С query получилось пока так - в G2 формула
Код: plaintext
=ISERROR(VLOOKUP(B2;C:C; 1 ;FALSE))
тянем вниз, сохраняем, затем запрос
Код: plaintext
1.
2.
3.
4.
XLODBC
 1 
DSN=Excel Files;DBQ=C:\Documents and Settings\user\Desktop\neoskytest.xls;DefaultDir=C:\Documents and Settings\user\Desktop;DriverId= 790 ;MaxBufferSize= 2048 ;PageTimeout= 5 ;
SELECT `Лист2$`.NLS, `Лист2$`.ISN1, `Лист2$`.ISN2, `Лист2$`.SUMMA, `Лист2$`.KOD_LG, `Лист2$`.DATA  FROM `Лист2$` WHERE (`Лист2$`.FORMULA=TRUE)
...
Рейтинг: 0 / 0
55 сообщений из 55, показаны все 3 страниц
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сравнение двух столбцов, сдвиг вниз, соответствие
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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