Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Поиск одинковых значений в двух столбцах. - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Поиск одинковых значений в двух столбцах. (Макросы/Sub)
Поиск одинковых значений в двух столбцах.
Serge1400 Дата: Пятница, 22.07.2016, 01:30 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Все доброй ночи!
В очередной раз морочусь с автоматизацией рабочего процесса, но знаний никаких, а готового решния не нашел.
Есть таблица с 4 колонками в которых распалагаются
- код товара,
- его наименование товара
- страна производства
- вес
Задача объединить по всей таблице построчно одинаковые коды с одинаковыми странами производства и суммировать их вес. Наименование неважно и берется из любой объединяемой строки .
Сейчас это все делается вручную через фильтр: сначал выбираются одинаковые коды, потом страна. Заетм копируется первая в списке отсоритрованная строка и вставляется ставляем в новую таблицу. Вручную суммируеся общий вес и добавляется в новую таблицу.
Было еще терпимо, когда были стаблицы на 20-строк. Но постепенно они становятся все длинее и длиннее и окончательно доканала полученная сегодня 200 строчная таблица, которая в итоге ужалась до 40 строк.
В общем времени тратиться много и бестолково. Уверен, что нужный результат можно получить за пару секунд при помощи уже существующего макроса - задача то в общем типовая. По честному потратил 3 вечера на поиски готовых решений - ничего подходящего не обнаружил. Пытался ради интереса сам "слепить". Получается полная фигня - не работает и подвешивает exel.
В общем в очердной раз требуется помощь участников этого форума.
Пример с исходной таблицей и таблицей с конечным результатмо прилагаю
К сообщению приложен файл: ___.xlsx(13Kb)
 
Ответить
СообщениеВсе доброй ночи!
В очередной раз морочусь с автоматизацией рабочего процесса, но знаний никаких, а готового решния не нашел.
Есть таблица с 4 колонками в которых распалагаются
- код товара,
- его наименование товара
- страна производства
- вес
Задача объединить по всей таблице построчно одинаковые коды с одинаковыми странами производства и суммировать их вес. Наименование неважно и берется из любой объединяемой строки .
Сейчас это все делается вручную через фильтр: сначал выбираются одинаковые коды, потом страна. Заетм копируется первая в списке отсоритрованная строка и вставляется ставляем в новую таблицу. Вручную суммируеся общий вес и добавляется в новую таблицу.
Было еще терпимо, когда были стаблицы на 20-строк. Но постепенно они становятся все длинее и длиннее и окончательно доканала полученная сегодня 200 строчная таблица, которая в итоге ужалась до 40 строк.
В общем времени тратиться много и бестолково. Уверен, что нужный результат можно получить за пару секунд при помощи уже существующего макроса - задача то в общем типовая. По честному потратил 3 вечера на поиски готовых решений - ничего подходящего не обнаружил. Пытался ради интереса сам "слепить". Получается полная фигня - не работает и подвешивает exel.
В общем в очердной раз требуется помощь участников этого форума.
Пример с исходной таблицей и таблицей с конечным результатмо прилагаю

Автор - Serge1400
Дата добавления - 22.07.2016 в 01:30
_Boroda_ Дата: Пятница, 22.07.2016, 03:09 | Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 9352
Репутация: 3924 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
А может просто сводной таблицей?
Если наименование обязательно, то потом из сводной тянем все значения прямыми ссылками, а наименование ВПР-ом
К сообщению приложен файл: 6464_1.xlsx(18Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеА может просто сводной таблицей?
Если наименование обязательно, то потом из сводной тянем все значения прямыми ссылками, а наименование ВПР-ом

Автор - _Boroda_
Дата добавления - 22.07.2016 в 03:09
nilem Дата: Пятница, 22.07.2016, 08:49 | Сообщение № 3
Группа: Авторы
Ранг: Ветеран
Сообщений: 1056
Репутация: 399 ±
Замечаний: 0% ±

Excel 2013
или так
[vba]
Код
Sub ertert()
Dim x, y(), i&, j&, k&, s$, n&
x = Range("A2").CurrentRegion.Value
ReDim y(1 To UBound(x), 1 To UBound(x, 2))

On Error Resume Next
With New Collection
    For i = 3 To UBound(x)
        s = x(i, 2) & "~" & x(i, 4)
        If IsEmpty(.Item(s)) Then
            k = k + 1: y(k, 1) = k
            .Add k, s
            For j = 2 To UBound(x, 2)
                y(k, j) = x(i, j)
            Next j
        Else
            n = .Item(s)
            y(n, 5) = y(n, 5) + x(i, 5)
        End If
    Next i
End With
On Error GoTo 0
Range("A15").Resize(k, UBound(x, 2)).Value = y()
End Sub
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениеили так
[vba]
Код
Sub ertert()
Dim x, y(), i&, j&, k&, s$, n&
x = Range("A2").CurrentRegion.Value
ReDim y(1 To UBound(x), 1 To UBound(x, 2))

On Error Resume Next
With New Collection
    For i = 3 To UBound(x)
        s = x(i, 2) & "~" & x(i, 4)
        If IsEmpty(.Item(s)) Then
            k = k + 1: y(k, 1) = k
            .Add k, s
            For j = 2 To UBound(x, 2)
                y(k, j) = x(i, j)
            Next j
        Else
            n = .Item(s)
            y(n, 5) = y(n, 5) + x(i, 5)
        End If
    Next i
End With
On Error GoTo 0
Range("A15").Resize(k, UBound(x, 2)).Value = y()
End Sub
[/vba]

Автор - nilem
Дата добавления - 22.07.2016 в 08:49
sv2014 Дата: Пятница, 22.07.2016, 11:00 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 156
Репутация: 37 ±
Замечаний: 0% ±

Excel 2013
Serge1400, добрый день,еще вариант макроса,кнопки test и очистка

[vba]
Код
Sub test()
   Dim z, i&, i1, m&
   z = Range("A3:E" & Range("A" & Rows.Count).End(xlUp).Row).Value
    With CreateObject("scripting.dictionary"): .CompareMode = 1
    For i = 1 To UBound(z): t = z(i, 2) & z(i, 4)
         If .exists(t) = False Then
         m = m + 1: .Item(t) = m: For j = 1 To UBound(z, 2): z(m, j) = z(i, j): Next
         Else
         z(.Item(t), 5) = z(.Item(t), 5) + z(i, 5)
         End If
   Next
Range("G2").Resize(.Count, UBound(z, 2)).Value = z
   End With
    i1 = Range("G" & Rows.Count).End(xlUp).Row
    Range("J" & i1 + 1) = "Èòîãî:"
    Range("K" & i1 + 1).Formula = "=SUM(K2:K" & i1 & ")"
    Range("G2").Formula = "1": Range("G3").Formula = "2"
    Range("G2:G3").AutoFill Destination:=Range("G2:G" & i1), Type:=xlFillDefault
End Sub
[/vba]
К сообщению приложен файл: example_22_07_2.xls(42Kb)
 
Ответить
СообщениеSerge1400, добрый день,еще вариант макроса,кнопки test и очистка

[vba]
Код
Sub test()
   Dim z, i&, i1, m&
   z = Range("A3:E" & Range("A" & Rows.Count).End(xlUp).Row).Value
    With CreateObject("scripting.dictionary"): .CompareMode = 1
    For i = 1 To UBound(z): t = z(i, 2) & z(i, 4)
         If .exists(t) = False Then
         m = m + 1: .Item(t) = m: For j = 1 To UBound(z, 2): z(m, j) = z(i, j): Next
         Else
         z(.Item(t), 5) = z(.Item(t), 5) + z(i, 5)
         End If
   Next
Range("G2").Resize(.Count, UBound(z, 2)).Value = z
   End With
    i1 = Range("G" & Rows.Count).End(xlUp).Row
    Range("J" & i1 + 1) = "Èòîãî:"
    Range("K" & i1 + 1).Formula = "=SUM(K2:K" & i1 & ")"
    Range("G2").Formula = "1": Range("G3").Formula = "2"
    Range("G2:G3").AutoFill Destination:=Range("G2:G" & i1), Type:=xlFillDefault
End Sub
[/vba]

Автор - sv2014
Дата добавления - 22.07.2016 в 11:00
Serge1400 Дата: Пятница, 22.07.2016, 21:22 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Всем откликнувшимся большое спасибо! Всем заплюсовал в репутации.
Нравится мне этот форум - еще ни разу не было чтоб мне дураку бестолковому не помогли советом и делом.
Сегодня несколько раз "покатал" все варианты: все таки по мне вариант макроса интереснеи кажется чем возня с формулами.
Вариант sv2014, почему то на многострочных таблицах начинает обвешивать клиограмм на 400, хотя в выложенном примере работает идеально. Причина для меня неизвестна так я в VBA вообще ничего не понимаю.
В общем в итоге остановился на варианте предложенном nilem: во всех тестах считает правильно + я смог сообразить что изменить в макросе чтобы итогова талица вставлялась в нужном мне месте.
Собственно последующие вопросы будут по макросу nilem,
- как добавить в макрос еще два столбца, чтоб и они суммировались по такому же принципу как и веса: то есть при совпадении кода и страны. Помимо того, что это иногда нужно и по работе, интересно было бы и самому разобраться что да как.
Поначалу думал, что сам решу, да куда там! Час пялился на текст, но так ничего и не понял. А когда будет возможность сравнить два варианта, то надеюсь пойму что там за что отвечает. Кстати макрос значения из добавленных столбцов подставляет в итоговую табличку из "материнской" строчки, но значения не суммирует.
Файл с новым примером с уже реальной рабочей таблицей не заню как приложить - у меня он под 500 кило весит.


Сообщение отредактировал Serge1400 - Суббота, 23.07.2016, 11:43
 
Ответить
СообщениеВсем откликнувшимся большое спасибо! Всем заплюсовал в репутации.
Нравится мне этот форум - еще ни разу не было чтоб мне дураку бестолковому не помогли советом и делом.
Сегодня несколько раз "покатал" все варианты: все таки по мне вариант макроса интереснеи кажется чем возня с формулами.
Вариант sv2014, почему то на многострочных таблицах начинает обвешивать клиограмм на 400, хотя в выложенном примере работает идеально. Причина для меня неизвестна так я в VBA вообще ничего не понимаю.
В общем в итоге остановился на варианте предложенном nilem: во всех тестах считает правильно + я смог сообразить что изменить в макросе чтобы итогова талица вставлялась в нужном мне месте.
Собственно последующие вопросы будут по макросу nilem,
- как добавить в макрос еще два столбца, чтоб и они суммировались по такому же принципу как и веса: то есть при совпадении кода и страны. Помимо того, что это иногда нужно и по работе, интересно было бы и самому разобраться что да как.
Поначалу думал, что сам решу, да куда там! Час пялился на текст, но так ничего и не понял. А когда будет возможность сравнить два варианта, то надеюсь пойму что там за что отвечает. Кстати макрос значения из добавленных столбцов подставляет в итоговую табличку из "материнской" строчки, но значения не суммирует.
Файл с новым примером с уже реальной рабочей таблицей не заню как приложить - у меня он под 500 кило весит.

Автор - Serge1400
Дата добавления - 22.07.2016 в 21:22
nilem Дата: Суббота, 23.07.2016, 06:42 | Сообщение № 6
Группа: Авторы
Ранг: Ветеран
Сообщений: 1056
Репутация: 399 ±
Замечаний: 0% ±

Excel 2013
все 500 кило не надо, достаточно 30-40 (мешок картошки :) - несколько строк так, как они расположены в реальном файле.


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениевсе 500 кило не надо, достаточно 30-40 (мешок картошки :) - несколько строк так, как они расположены в реальном файле.

Автор - nilem
Дата добавления - 23.07.2016 в 06:42
Serge1400 Дата: Суббота, 23.07.2016, 11:30 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
все 500 кило не надо, достаточно 30-40 (мешок картошки - несколько строк так, как они расположены в реальном файле.

Сделал все заново - получилось 20 кило. Мешок, но маленький :D
Выдаю так, как оно будет использоваться.
На кнопочке висит ваш макрос, результат работы которого виден в правой итоговой табличке. Ну и результирующие формулы поверх заголовков вставил - так удобнее.
Да! И это - обсчитался, блин, маленько по добавляемым колонкам - их три получается. Если вместе с "весом", то 4.
P.S. Пардон, в предыдущем сообщении опечатался. Вариант, предложенный sv2014 обсчитывает по весу. Справедливость восстановил.
К сообщению приложен файл: __.xlsm(22Kb)


Сообщение отредактировал Serge1400 - Суббота, 23.07.2016, 11:47
 
Ответить
Сообщение
все 500 кило не надо, достаточно 30-40 (мешок картошки - несколько строк так, как они расположены в реальном файле.

Сделал все заново - получилось 20 кило. Мешок, но маленький :D
Выдаю так, как оно будет использоваться.
На кнопочке висит ваш макрос, результат работы которого виден в правой итоговой табличке. Ну и результирующие формулы поверх заголовков вставил - так удобнее.
Да! И это - обсчитался, блин, маленько по добавляемым колонкам - их три получается. Если вместе с "весом", то 4.
P.S. Пардон, в предыдущем сообщении опечатался. Вариант, предложенный sv2014 обсчитывает по весу. Справедливость восстановил.

Автор - Serge1400
Дата добавления - 23.07.2016 в 11:30
RAN Дата: Суббота, 23.07.2016, 12:01 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4277
Репутация: 829 ±
Замечаний: 0% ±

2010
[vba]
Код
Sub мяу()
    Dim arr, aT(), i&, j&
    arr = Range("A3").CurrentRegion.Value
    With CreateObject("Scripting.Dictionary")
        For i = 1 To UBound(arr)
            If Len(arr(i, 1)) Then
                If .Exists(arr(i, 1) & "|" & arr(i, 3)) Then
                    .Item(arr(i, 1) & "|" & arr(i, 3))(2) = .Item(arr(i, 1) & "|" & arr(i, 3))(2) + arr(i, 3)
                    .Item(arr(i, 1) & "|" & arr(i, 3))(3) = .Item(arr(i, 1) & "|" & arr(i, 3))(3) + arr(i, 4)
                    .Item(arr(i, 1) & "|" & arr(i, 3))(4) = .Item(arr(i, 1) & "|" & arr(i, 3))(4) + arr(i, 5)
                    .Item(arr(i, 1) & "|" & arr(i, 3))(5) = .Item(arr(i, 1) & "|" & arr(i, 3))(5) + arr(i, 6)
                Else
                    ReDim aT(1 To 6)
                    aT(1) = arr(i, 2)
                    For j = 2 To 6
                        aT(j) = arr(i, j + 1)
                    Next
                    .Item(arr(i, 1) & "|" & arr(i, 3)) = aT
                End If
            End If
        Next
        Range("A40").Resize(.Count, 6) = Application.Transpose(Application.Transpose(.Items))
    End With
End Sub
[/vba]


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение[vba]
Код
Sub мяу()
    Dim arr, aT(), i&, j&
    arr = Range("A3").CurrentRegion.Value
    With CreateObject("Scripting.Dictionary")
        For i = 1 To UBound(arr)
            If Len(arr(i, 1)) Then
                If .Exists(arr(i, 1) & "|" & arr(i, 3)) Then
                    .Item(arr(i, 1) & "|" & arr(i, 3))(2) = .Item(arr(i, 1) & "|" & arr(i, 3))(2) + arr(i, 3)
                    .Item(arr(i, 1) & "|" & arr(i, 3))(3) = .Item(arr(i, 1) & "|" & arr(i, 3))(3) + arr(i, 4)
                    .Item(arr(i, 1) & "|" & arr(i, 3))(4) = .Item(arr(i, 1) & "|" & arr(i, 3))(4) + arr(i, 5)
                    .Item(arr(i, 1) & "|" & arr(i, 3))(5) = .Item(arr(i, 1) & "|" & arr(i, 3))(5) + arr(i, 6)
                Else
                    ReDim aT(1 To 6)
                    aT(1) = arr(i, 2)
                    For j = 2 To 6
                        aT(j) = arr(i, j + 1)
                    Next
                    .Item(arr(i, 1) & "|" & arr(i, 3)) = aT
                End If
            End If
        Next
        Range("A40").Resize(.Count, 6) = Application.Transpose(Application.Transpose(.Items))
    End With
End Sub
[/vba]

Автор - RAN
Дата добавления - 23.07.2016 в 12:01
Serge1400 Дата: Суббота, 23.07.2016, 12:59 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
RAN, ни разу не "мяу" вышло %)
Получилась просто копия значений исходной таблицы и без стоблика "пары".
 
Ответить
СообщениеRAN, ни разу не "мяу" вышло %)
Получилась просто копия значений исходной таблицы и без стоблика "пары".

Автор - Serge1400
Дата добавления - 23.07.2016 в 12:59
nilem Дата: Суббота, 23.07.2016, 13:06 | Сообщение № 10
Группа: Авторы
Ранг: Ветеран
Сообщений: 1056
Репутация: 399 ±
Замечаний: 0% ±

Excel 2013
и до кучи


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениеи до кучи

Автор - nilem
Дата добавления - 23.07.2016 в 13:06
nilem Дата: Суббота, 23.07.2016, 13:28 | Сообщение № 11
Группа: Авторы
Ранг: Ветеран
Сообщений: 1056
Репутация: 399 ±
Замечаний: 0% ±

Excel 2013
... а Мяу, видимо, имелось ввиду так:

[p.s.]дядя Хьюго любит такие коды :)[/p.s.]


Яндекс.Деньги 4100159601573

Сообщение отредактировал nilem - Суббота, 23.07.2016, 13:36
 
Ответить
Сообщение... а Мяу, видимо, имелось ввиду так:

[p.s.]дядя Хьюго любит такие коды :)[/p.s.]

Автор - nilem
Дата добавления - 23.07.2016 в 13:28
Serge1400 Дата: Суббота, 23.07.2016, 13:53 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
nilem, Воооо! Прям как надо вышло thumb :respect:
Спасибо!
Пытался сравнить тексты первого и второго макроса - в общем никакого сильного просветления не появилось. Вижу что почти все осталось как и было и только в самом конце небольшая добавка и изменения. В общем моих знаний и мозгов для осознания происходящих процессов явно не хвататет.
А можно сделать так, чтоб макрос нолики в пустые ячейки не вставлял в конечной таблице!
А то он их выборочно разбросал и от этого страдает мой перфекционизм и красота табличек
P.S. Мяу после корректировки тоже заработало!
К сообщению приложен файл: ___2.xlsm(24Kb)


Сообщение отредактировал Serge1400 - Суббота, 23.07.2016, 14:10
 
Ответить
Сообщениеnilem, Воооо! Прям как надо вышло thumb :respect:
Спасибо!
Пытался сравнить тексты первого и второго макроса - в общем никакого сильного просветления не появилось. Вижу что почти все осталось как и было и только в самом конце небольшая добавка и изменения. В общем моих знаний и мозгов для осознания происходящих процессов явно не хвататет.
А можно сделать так, чтоб макрос нолики в пустые ячейки не вставлял в конечной таблице!
А то он их выборочно разбросал и от этого страдает мой перфекционизм и красота табличек
P.S. Мяу после корректировки тоже заработало!

Автор - Serge1400
Дата добавления - 23.07.2016 в 13:53
nilem Дата: Суббота, 23.07.2016, 14:10 | Сообщение № 13
Группа: Авторы
Ранг: Ветеран
Сообщений: 1056
Репутация: 399 ±
Замечаний: 0% ±

Excel 2013
вот эту строку
[vba]
Код
y(n, j) = y(n, j) + x(i, j)
[/vba]
замените на такую строку
[vba]
Код
If x(i, j) > 0 Then y(n, j) = y(n, j) + x(i, j)
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениевот эту строку
[vba]
Код
y(n, j) = y(n, j) + x(i, j)
[/vba]
замените на такую строку
[vba]
Код
If x(i, j) > 0 Then y(n, j) = y(n, j) + x(i, j)
[/vba]

Автор - nilem
Дата добавления - 23.07.2016 в 14:10
RAN Дата: Суббота, 23.07.2016, 14:21 | Сообщение № 14
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4277
Репутация: 829 ±
Замечаний: 0% ±

2010
Тогда уж так
[vba]
Код
Sub мяв()
    Dim arr, aT(), i&, j&, s$
    arr = Range("A3").CurrentRegion.Value
    With CreateObject("Scripting.Dictionary")
        For i = 1 To UBound(arr)
            s = arr(i, 1) & "|" & arr(i, 3)
            If Len(arr(i, 1)) Then
                ReDim aT(1 To 7)
                If .Exists(s) Then
                    aT = .Item(s)
                    aT(4) = aT(4) + arr(i, 4)
                    aT(5) = aT(5) + arr(i, 5)
                    aT(6) = aT(6) + arr(i, 6)
                    aT(7) = aT(7) + arr(i, 7)
                    .Item(s) = aT
                Else
                    For j =1To 7
                        aT(j) = arr(i, j)
                    Next
                    .Item(s) = aT
                End If
            End If
        Next
        Range("A40").Resize(.Count, 7) = Application.Transpose(Application.Transpose(.Items))
    End With
End Sub
[/vba]


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Суббота, 23.07.2016, 14:23
 
Ответить
СообщениеТогда уж так
[vba]
Код
Sub мяв()
    Dim arr, aT(), i&, j&, s$
    arr = Range("A3").CurrentRegion.Value
    With CreateObject("Scripting.Dictionary")
        For i = 1 To UBound(arr)
            s = arr(i, 1) & "|" & arr(i, 3)
            If Len(arr(i, 1)) Then
                ReDim aT(1 To 7)
                If .Exists(s) Then
                    aT = .Item(s)
                    aT(4) = aT(4) + arr(i, 4)
                    aT(5) = aT(5) + arr(i, 5)
                    aT(6) = aT(6) + arr(i, 6)
                    aT(7) = aT(7) + arr(i, 7)
                    .Item(s) = aT
                Else
                    For j =1To 7
                        aT(j) = arr(i, j)
                    Next
                    .Item(s) = aT
                End If
            End If
        Next
        Range("A40").Resize(.Count, 7) = Application.Transpose(Application.Transpose(.Items))
    End With
End Sub
[/vba]

Автор - RAN
Дата добавления - 23.07.2016 в 14:21
Serge1400 Дата: Суббота, 23.07.2016, 14:37 | Сообщение № 15
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
вот эту строку
y(n, j) = y(n, j) + x(i, j)

замените на такую строку
If x(i, j) > 0 Then y(n, j) = y(n, j) + x(i, j)

Вот теперь полная нирвана!
И еще раз спасибо!
 
Ответить
Сообщение
вот эту строку
y(n, j) = y(n, j) + x(i, j)

замените на такую строку
If x(i, j) > 0 Then y(n, j) = y(n, j) + x(i, j)

Вот теперь полная нирвана!
И еще раз спасибо!

Автор - Serge1400
Дата добавления - 23.07.2016 в 14:37
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Поиск одинковых значений в двух столбцах. (Макросы/Sub)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2016 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!