Страницы: 1
RSS
Макрос поиска выдачи результата по совокупности параметров в нескольких столбцах
 
Во вложении Пример с двумя вкладками (Данные и Результат). Подскажите, пожалуйста, макрос для синей кнопки в этом файле, который выдавал бы результат по совокупности трех параметров (указал их на кнопке). Заранее спасибо за Ваше решение.
 
Евгений И., как всегда великолепное описание от Вас)
Не бойтесь совершенства. Вам его не достичь.
 
Попробую коротко, насколько получится...Есть файл с данными - вкладка Результат, в которой нам известны данные №1 и №2 (столбцы I и J..суммарно это артикул товара), вкладка Данные, в котором следующие столбцы:

№1, №2 - это совокупно артикул товара
Статус заказ: 1 - означает, что товар продан, пусто - выставлен счет
Привлечение - показывает структуру клиента (опт/розница/потребитель)
Остальные столбцы подписаны и должны быть понятны.

Так вот нам нужно во вкладке Результат вывести только те строчки из таблицы Данные, у которых СОВОКУПНО:
1. Статус заказа: 1
2. Привлечение: НЕПУСТО
3.Совпал совокупно номер артикула №1&№2
Повторюсь, во вкладе Результат столбцы I и J нам известны, нужно получить данные в зеленом поле.
Изменено: Евгений И. - 20.11.2020 13:21:48
 
Цитата
Евгений И. написал:
1. Статус заказа: 1
а почему же у Вас на листе результат больше 4х позиций)
Не бойтесь совершенства. Вам его не достичь.
 
Больше 4 позиций не результат, а исходные данные в столбце I и J...найдено в качестве результата как раз 4 заполненных позиций (зеленым). Все, что бесцветным в двух вкладках - это известные нам данные...а надо получить заполнение да данным в зеленом поле
Изменено: Евгений И. - 20.11.2020 14:39:49
 
Евгений И., все теперь понял в первых двух столбцах вы задаете информацию для подстановки ? только макрос нужен ?там же можно просто формулами?
Не бойтесь совершенства. Вам его не достичь.
 
Да, насчет столбцов все верно...Макрос был бы удобнее...пробовал решить вопрос формулами без доп столбцов  (предыдущая тема)...частями хотел решить...не решил...а данных в общей таблице очень много, лучше макросом сразу...Тем более все равно потом формулы хотел зашить в макрос...поэтому гулять, так гулять...))
Изменено: Евгений И. - 20.11.2020 14:24:38
 
Евгений И.,
Код
Sub dsd()
Dim sh As Worksheet, sh2 As Worksheet, lr As Long, lr2 As Long, i As Long
Set sh = Worksheets("Данные"): Set sh2 = Worksheets("Результат")
lr = sh2.Cells(Rows.Count, 9).End(xlUp).Row
lr2 = sh.Cells(Rows.Count, 1).End(xlUp).Row
For i = 4 To lr2
    If sh.Cells(i, 241) = 1 Then
        For n = 5 To lr2
            If sh2.Cells(n, 9) = sh.Cells(i, 1) And sh2.Cells(n, 10) = sh.Cells(i, 2) Then
                sh2.Cells(n, 11) = sh.Cells(i, 238)
                sh2.Cells(n, 12) = sh.Cells(i, 5)
                sh2.Cells(n, 13) = sh.Cells(i, 6)
                Exit For
            End If
        Next n
    End If
Next i
End Sub
Не бойтесь совершенства. Вам его не достичь.
 
Проверил, все отлично, большое спасибо за Ваши ответы на наши вопросы во многих темах!!!
 
Евгений И., вы замечали, что вы создавая тему можете получить помощь быстрее если нормально все писать, а в итоге сначала переписка идет...задумайтесь
Не бойтесь совершенства. Вам его не достичь.
Страницы: 1
Наверх