ďťż

Mefisto...diabeł czy anioł?

Witam,
mam następujący problem. Potrzebuję napisać makro, które w tabelce będzie szukało wiersza z nazwą np. "Razem materiały" i gdy taki wiersz znajdzie, to kopiuje wiersz poprzedni (razem z formułami) i wkleja go przed nim. Mam takie makro jak poniżej, ale ono oprócz tego, że wkleja skopiowany wiersz , wkleja również wiele innych wierszy. Jak je przerobić, aby w konkretnym miejscu wklejało jeden skopiowany wiersz, a jak uruchomię makro ponownie to znowu wklei kolejny jeden wiersz.

Sub Makro5()

Dim rng As Range
Dim lLastRow As Integer
Dim lLastCol As Integer
Dim i As Integer
Dim SearchValue As String

SearchValue = "RAZEM MATERIAŁY"

Set rng = Worksheets("Arkusz1").Range("B9").SpecialCells(xlCellTypeLastCell)
lLastRow = rng.Row
lLastCol = rng.Column
'Now for the loop

For i = 9 To lLastRow
If Cells(i, "B").Value = SearchValue Then
'MsgBox "Search value found at Row: " & i - 1
Rows(i - 1).Select
Selection.Insert 'Shift:=xlDown
End If
Next i

End Sub

Mam również makro usuwające jeden wiersz. I po każdym uruchomieniu tego makra usuwa kolejny. Co należy dopisać, żeby nie usuwało 10 pierwszych wierszy w tabelce?

Dim rng As Range
Dim lLastRow As Integer
Dim lLastCol As Integer
Dim i As Integer

SearchValue = "RAZEM MATERIAŁY"
Set rng = Worksheets("Arkusz1").Range("B9").SpecialCells(xlCellTypeLastCell)
lLastRow = rng.Row
lLastCol = rng.Column
'Now for the loop

For i = 9 To lLastRow
If Cells(i, "B").Value = SearchValue Then
'MsgBox "Search value found at Row: " & i - 1
Rows(i - 1).Select
Selection.Delete 'Shift:=xlDown
' Range("B30").End(xlUp).Select
End If
Next i
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • katkaras.opx.pl