Разпределете данни от списък на ежедневните листове, използвайки VBA

Anonim

В тази статия ще създадем макрос за подреждане на данните по дни на няколко листа.

Суровите данни за тази статия се състоят от дневни данни за продажбите на екипа, които включват дата, име на агент и брой продадени артикули.

Искаме да разпределим данните по дни на няколко листа. Щракването върху бутона „Разпределяне на данни всеки ден“ ще направи същото.

Обяснение на кода

Направете до IsEmpty (работни листове (1). Клетки (intRowS, 1))

Цикъл

В горния код цикълът Do Do ще циклира, докато не се срещне празна клетка.

strTab = Формат (клетки (intRowS, 1) .Value, "ddmmyy")

Горният код се използва за извличане на името на листа от датата.

intRowT = Работни листове (strTab). Клетки (Rows.Count, 1) .End (xlUp) .Row + 1

Горният код се използва за получаване на номер на ред на последната клетка.

Моля, следвайте кода по -долу

Sub Divide () "Деклариране на променливи Dim intRowS As Integer, intRowT As Integer Dim strTab As String" Инициализиране с начален номер на ред intRowS = 10 'Проверка дали клетката в първата колона е празна Do Until IsEmpty (Работни листове (1). Клетки (intRowS, 1)) 'Получаване на име на листа въз основа на стойността на датата в първата колона strTab = Format (Cells (intRowS, 1) .Value, "ddmmyy")' Получаване на номера на реда на последната клетка intRowT = Worksheets (strTab). Клетки (Rows.Count, 1). End (xlUp) .Row + 1 'Копиране на данни в съответните редове на листа (intRowS). Копиране на работни листове (strTab). 

Ако този блог ви е харесал, споделете го с приятелите си във Facebook. Също така можете да ни следвате в Twitter и Facebook.

Ще се радваме да чуем от вас, уведомете ни как можем да подобрим работата си и да я направим по -добра за вас. Пишете ни на имейл сайта