Удаление строк, которые содержат день и месяц, но игнорируют год - PullRequest
0 голосов
/ 24 декабря 2018

Я хочу удалить строки, которые являются чем-либо до начала определенного месяца, поэтому, например, все до 1 января необходимо удалить из загруженных данных SAP.Я просто писал код, когда думал о разных годах?

Как мне установить, чтобы он удалял что-то меньше 01.01, а не 01.01.08?

Sub Filtration()
Dim Wb As Workbook
Dim Front As Worksheet
Dim Iws As Worksheet
Dim Ows As Worksheet
Dim x As Long
Dim Delete As Long
Dim L As String
Dim Answer As Integer
Dim Month As String

Set Wb = ThisWorkbook
Set Front = Wb.Worksheets("Front")
Set Iws = Wb.Worksheets("Input")
Set Ows = Wb.Worksheets("Output")

Iws.Columns("F").Replace What:=".", Replacement:="/", SearchOrder:=xlByColumns, MatchCase:=True

For Delete = Iws.Cells(Rows.Count, 6).End(xlUp).Row To 3 Step -1

With Iws.Cells(Delete, 6)
        If Month = "January" Then
        L = Left(Iws.Cells(Delete, 6), 5)
           If L < "01/01" Then Rows(Delete).EntireRow.Delete
        End If
 End With
Next Delete     

вышеизложенное, что я знаю, не работает, но, надеюсь, покажет вам, чего я хочу достичь, когда код просматривает каждую строку и находит, что есть дата, скажем, 31/12 и удаление этой строки.

1 Ответ

0 голосов
/ 24 декабря 2018

Используйте функции День и Месяц для проверки, например, для удаления до 10 апреля:

If Day(Iws.Cells(Delete, 6)) < 10 And Month(Iws.Cells(Delete, 6)) < 4 Then Iws.Rows(Delete).EntireRow.Delete
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...