Excel - Макрос за попълване на данни въз основа на критерии

Проблем

Бих искал да попълня данни от 1 лист на друг лист, въз основа на определени критерии. Във връзка с примерните данни, предоставени в следната връзка:

  • Попълнете данните в нов лист, наречен "Бавно преместване", когато колона H е повече от 90 и колона D не е равна на нула.
  • Попълнете данните в нов лист, наречен "Non Moving", когато колона G е нула и колона D не е равна на нула.

Решение

Опитайте този макрос:

Поставете двата листа "Бавно движение" и "Non Movingt". Стартирайте този макрос (в макроса името на работните листове трябва да бъде точно като имената на листа):

 Sub test () Dim j Както Long, k As Long undo Worksheets ("6200_Data") Активирайте k = Обхват ("a6"). End (xlDown) .Row За j = 1 До k Ако клетки (j, "H") )> 90 И Клетки (j, "D") 0 Тогава клетки (j, "A"). EntireRow.Copy _ Worksheets ("Slow Moving"). Клетки (Rows.Count, "A"). End (xlUp) .Offset (1, 0) Ако Cells (j, "G") = 0 и Cells (j, "D") 0 Тогава клетки (j, "A"). EntireRow.Copy _ Worksheets ("Non Moving"). Клетки (Rows.Count, "A") Край (xlUp) .Offset (1, 0) Следващ j Работни листове ("Бавно преместване"). .Cells.Clear Работни листове ("Non Moving"). Cells.Clear End Sub 

Благодарение на Venkat1926 за този съвет.

Предишна Статия Следваща Статия

Топ Съвети