В этой статье мы создадим макрос для копирования неполных данных на новый лист.

Необработанные данные для этой статьи состоят из данных о заработной плате, которые включают некоторые неполные записи.

ArrowMain

Мы хотим скопировать записи тех сотрудников, чья информация о зарплате отсутствует. При нажатии на кнопку незавершенные записи переместятся на лист «Пустые записи».

ArrowOutput

Логическое объяснение

В этой статье мы создали макрос «CopyEmptys» для копирования недостающих записей на лист «BlankRecords». Он проверяет столбец «Зарплата» на наличие пустых записей. Если обнаружена пустая запись, она копирует эту запись на лист «BlankRecords».

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

intRowL = Cells (Rows.Count, 1) .End (xlUp) .Row Above code используется для получения номера строки последней ячейки.

IsEmpty (Cells (intRow, 4))

Приведенный выше код используется для проверки, указана ли указанная зарплата пустой.

Пожалуйста, введите код ниже

Range (.Cells (intRowT, 1), .Cells (intRowT, 3)). Value = Range (Cells (intRow, 1), Cells (intRow, 3)). Value Код выше используется для того, чтобы иметь копию отсутствующего запись с основного листа на лист «BlankRecord».
Option Explicit

Sub CopyEmptys()

'Declaring variables

Dim intRow As Integer, intRowL As Integer, intRowT As Integer

'Getting row number of last cell

intRowL = Cells(Rows.Count, 1).End(xlUp).Row

'Looping from 10th row to last cell

For intRow = 10 To intRowL



'Checking the fourth column whether it is empty

If IsEmpty(Cells(intRow, 4)) Then

With Worksheets(2)

'Getting row number of row next to last row

intRowT = .Cells(.Rows.Count, 1).End(xlUp).Row + 1



'Inserting data to "BlankRecords" sheet

.Range(.Cells(intRowT, 1), .Cells(intRowT, 3)).Value = _

Range(Cells(intRow, 1), Cells(intRow, 3)).Value

End With

End If

Next intRow

End Sub

Если вам понравился этот блог, поделитесь им с друзьями на Facebook и Facebook.

Мы будем рады услышать от вас, дайте нам знать, как мы можем улучшить нашу работу и сделать ее лучше для вас. Напишите нам на [email protected]