Мне нужно оптимизировать код, и я хотел бы удалить циклы goto by, но у меня возникли небольшие проблемы с предлагаемыми циклами и синтаксисом VBA!
Dim a As Integer, b As Integer
a = 2
line1: 'Goto line
Workbooks("0-base de données.xlsx").Worksheets(1).Activate
If Cells(a, 1) <> "" Then
b = a
line2: 'Goto line
If Cells(a, 18) = Cells(a + 1, 18) Then
If Cells(a, 23) <> "" And Cells(a, 23) <= Date And Cells(a, 256) = 1 Then
a = a + 1
GoTo line2
Else
line3: 'Goto line
If Cells(a, 18) = Cells(a + 1, 18) Then
a = a + 1
GoTo line3
Else:
a = a + 1
GoTo line1
End If
End If
Else
If Cells(a, 23) <> "" And Cells(a, 23) <= Date And Cells(a, 256) = 1 Then
Workbooks("0-base de données.xlsx").Worksheets(1).Range("1:2").Copy
Workbooks("0-base de données1.xlsx").Worksheets(1).Activate
D = 2
line5: 'Goto line
If Cells(D, 1) <> "" Then
D = D + 1
GoTo line5
End If
Cells(D, 1).Select
ActiveSheet.Paste
Windows("0-base de données.xlsx").Activate
Rows(b & ":" & a).Select
Selection.Delete Shift:=xlUp
a = b
GoTo line1
End If
a = a + 1
GoTo line1
End If
End If
Я прочитал многосообщений, но я не нашел соответствующий код :(
Заранее спасибо