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

Вход

Регистрация

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

 

= Мир MS Excel/Макрос для выборки по условию. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос для выборки по условию. (Макросы/Sub)
Макрос для выборки по условию.
Chelovekov Дата: Суббота, 26.12.2020, 14:15 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 210
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Здравствуй, Гуры Екселя. Помогите решить следующую задачу, нужно создать макрос который будет в ячейку B3, поочередно подставлять номер
согласно условию выборки, а так же копировать нужные данные согласно условию для выборки.
И вставлять в Книгу(Результат) .
Пример прилагаю.
Спасибо
К сообщению приложен файл: 7882733.xlsx(15.4 Kb)


Сообщение отредактировал Chelovekov - Суббота, 26.12.2020, 14:20
 
Ответить
СообщениеЗдравствуй, Гуры Екселя. Помогите решить следующую задачу, нужно создать макрос который будет в ячейку B3, поочередно подставлять номер
согласно условию выборки, а так же копировать нужные данные согласно условию для выборки.
И вставлять в Книгу(Результат) .
Пример прилагаю.
Спасибо

Автор - Chelovekov
Дата добавления - 26.12.2020 в 14:15
китин Дата: Суббота, 26.12.2020, 15:05 | Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 6427
Репутация: 985 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
Здравствуйте
как понял
[vba]
Код
Sub Макрос1()
     Nn_ = Sheets("Выборка").Range("B1").Value
     Kn_ = Sheets("Выборка").Range("E1").Value
     bb_1 = Sheets("Результат").Cells(Rows.Count, 2).End(xlUp).Row + 1
     Sheets("Результат").Range("A2:D" & bb_1).ClearContents
    For ii_ = Nn_ To Kn_
        If Sheets("Таблица").Range("D" & ii_ + 1).Value = Sheets("Выборка").Range("E6").Value Then
               bb_ = Sheets("Результат").Cells(Rows.Count, 2).End(xlUp).Row + 1
                Sheets("Таблица").Range("B" & ii_ + 1 & ":D" & ii_ + 1).Copy
                Sheets("Результат").Range("B" & bb_).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        End If
    Next ii_
        With Sheets("Результат").Range("A2:A" & bb_)
            .Value = 1
            .DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, _
               Step:=1, Stop:=Sheets("Результат").Cells(Rows.Count, "A").End(xlUp).Row, Trend:=False
        End With
End Sub
[/vba]
К сообщению приложен файл: 4713734.xlsm(24.1 Kb)


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538
 
Ответить
СообщениеЗдравствуйте
как понял
[vba]
Код
Sub Макрос1()
     Nn_ = Sheets("Выборка").Range("B1").Value
     Kn_ = Sheets("Выборка").Range("E1").Value
     bb_1 = Sheets("Результат").Cells(Rows.Count, 2).End(xlUp).Row + 1
     Sheets("Результат").Range("A2:D" & bb_1).ClearContents
    For ii_ = Nn_ To Kn_
        If Sheets("Таблица").Range("D" & ii_ + 1).Value = Sheets("Выборка").Range("E6").Value Then
               bb_ = Sheets("Результат").Cells(Rows.Count, 2).End(xlUp).Row + 1
                Sheets("Таблица").Range("B" & ii_ + 1 & ":D" & ii_ + 1).Copy
                Sheets("Результат").Range("B" & bb_).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        End If
    Next ii_
        With Sheets("Результат").Range("A2:A" & bb_)
            .Value = 1
            .DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, _
               Step:=1, Stop:=Sheets("Результат").Cells(Rows.Count, "A").End(xlUp).Row, Trend:=False
        End With
End Sub
[/vba]

Автор - китин
Дата добавления - 26.12.2020 в 15:05
Chelovekov Дата: Суббота, 26.12.2020, 15:18 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 210
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Огромное спасибо hands
 
Ответить
СообщениеОгромное спасибо hands

Автор - Chelovekov
Дата добавления - 26.12.2020 в 15:18
Chelovekov Дата: Суббота, 26.12.2020, 15:38 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 210
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Только можно немного поправить, нужен такой алгоритм, подставляет цифру, ищется нужная информация из таблицы, и потом нужная информация заноситься в результат. А макросе сверху, как я понял, информация копируется, напрямую из таблицы, а нужно что копировался из книги Выборка, с ячеек А6,С6,Е6.
Алгоритм :
1. Водится цифра 1
2. Копируется информация (Если соблюдается условие) с книги (Выборка) с ячеек А6,С6,Е6 , если условие не соблюдается, то водится цифра 2 и т.д. пока цикл не закончится.

Надеюсь понятно.
Спасибо
 
Ответить
СообщениеТолько можно немного поправить, нужен такой алгоритм, подставляет цифру, ищется нужная информация из таблицы, и потом нужная информация заноситься в результат. А макросе сверху, как я понял, информация копируется, напрямую из таблицы, а нужно что копировался из книги Выборка, с ячеек А6,С6,Е6.
Алгоритм :
1. Водится цифра 1
2. Копируется информация (Если соблюдается условие) с книги (Выборка) с ячеек А6,С6,Е6 , если условие не соблюдается, то водится цифра 2 и т.д. пока цикл не закончится.

Надеюсь понятно.
Спасибо

Автор - Chelovekov
Дата добавления - 26.12.2020 в 15:38
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос для выборки по условию. (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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