Cześć. Jestem dość zielony z programowania w vba ale staram się pogłębiać wiedzę, utknąłem przy raczej dość prostej rzeczy. Napisałem skrypt który wygląda mniej więcej tak:
Sub AddNewProduct()
Dim lastrow As Long
Dim i As Long
lastrow = ActiveSheet.UsedRange.Rows.Count
For i = 2 To lastrow
If Cells(i, "A").Value <> Cells(i - 1, "A").Value Then
Rows(i).Select
Selection.Copy
Selection.Insert Shift:=xlDown
Application.CutCopyMode = False
Cells(i, "AG").Select
Selection.ClearContents
Cells(i, "AJ").Select
ActiveCell.FormulaR1C1 = "Nowy produkt"
End If
End Sub
Skrypt w skrócie dodaje wiersze na podstawie warunku, przez co zakres podany w pętli for (do ostatniego wiersza pierwotnej kolumny) jest zbyt mały i po dodaniu dodatkowych wierszy zatrzymuje się na wartości zadeklarowanej w lastrow. Nie do końca wiem jak zrobić aby skrypt wykonywał instrukcję do końca kolumny uwzględniając dodane wiersze. Bardzo proszę o pomoc we wskazaniu co mógłbym zmienić aby skrypt działał obejmując cały zakres. Z góry dziękuję za każdą radę