Распределить данные из списка повседневно листов с использованием VBA
В этой статье мы создадим макрос для размещения данных на нескольких листах по дням.
Необработанные данные для этой статьи состоят из данных о продажах команды за день, включая дату, имя агента и количество проданных товаров.
Мы хотим распределять данные по дням на нескольких листах. При нажатии на кнопку «Распространять данные по дням» произойдет то же самое.
Объяснение кода
Выполнить до IsEmpty (Worksheets (1) .Cells (intRowS, 1))
Цикл В приведенном выше коде цикл Do until будет повторяться до тех пор, пока не будет обнаружена пустая ячейка.
strTab = Format (Cells (intRowS, 1) .Value, «ddmmyy»)
Приведенный выше код используется для извлечения имени листа из даты.
intRowT = Worksheets (strTab) .Cells (Rows.Count, 1) .End (xlUp) .Row + 1 Приведенный выше код используется для получения номера строки последней ячейки.
Пожалуйста, введите код ниже
Sub Divide() 'Declaring variables Dim intRowS As Integer, intRowT As Integer Dim strTab As String 'Initializing with starting row number intRowS = 10 'Checking whether cell in first column is empty Do Until IsEmpty(Worksheets(1).Cells(intRowS, 1)) 'Getting name of the sheet based on the date value in the first column strTab = Format(Cells(intRowS, 1).Value, "ddmmyy") 'Getting the row number of last cell intRowT = Worksheets(strTab).Cells(Rows.Count, 1).End(xlUp).Row + 1 'Copying data to respective sheet Rows(intRowS).Copy Worksheets(strTab).Rows(intRowT) intRowS = intRowS + 1 Loop End Sub
Если вам понравился этот блог, поделитесь им с друзьями на Facebook и Facebook.
Мы будем рады услышать от вас, дайте нам знать, как мы можем улучшить нашу работу и сделать ее лучше для вас. Напишите нам на [email protected]