Доброе утро,
У меня есть база данных паспортов безопасности в интересах COSHH, я пытаюсь создать функцию, в которой пользователь может вводить дату в «H7», а любую вводить датыменьше этого значения вся строка будет перенесена в sheet2.
код, который я написал, как показано ниже
Sub checkdatasheets()
Dim datefrom As Variant
'select first entry
Sheet1.Range("E2").Select
'continue until an empty cell is reached
Do Until ActiveCell.Offset(1, 0).Value = ""
If ActiveCell.Value = "" Then GoTo skipto:
'aquire date parameter
datefrom = Sheet1.Range("H7")
'if revision date is less than the date parameter copy and add to sheet2
If ActiveCell.Value <= datefrom Then
ActiveCell.Rows.EntireRow.Copy
Sheets("Sheet2").Select
NextRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
Cells(NextRow, 1).Select
ActiveSheet.Paste
Sheets("Sheet1").Select
End If
'move onto next cell
ActiveCell.Offset(1, 0).Select
Loop
skipto: MsgBox "Missing Data Sheet"
End Sub
Проблема, с которой я столкнулся, состоит в том, что этот код принимает определенные строки, но многопропущены строки, даже если они меньше, чем переменная datefrom?
Заранее благодарю за помощь, любые отзывы о написании моего кода приветствуются.