• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Laatste regel verwijderen vanaf bepaalde rij

Status
Niet open voor verdere reacties.

zwinmi

Gebruiker
Lid geworden
16 feb 2010
Berichten
98
Hallo Forumleden,

Ik heb onderstaande code met hulp van het forum in elkaar gezet. Maar hij doet het nog niet helemaal goed. Wat is wil is het volgende:
- De laatste rij met waarden moet worden verwijderd, tenzij dit rij 11 is (Rij 1 t/m 11 mogen dus nooit verwijderd worden)
- Rij 7 moet worden gekopieerd en in de laatste regel worden geplakt, eerst waarden dan opmaak.
- Daarna moet rij 11 zichtbaar worden gemaakt en worden gekopieert. Dan weer laatste regel opzoeken en plakken, eerst waarden dan opmaak. (in totaal worden er dus 2 nieuwe rijen toegevoegd met waarden).
- Rij 11 moet weer worden verborgen.
- Als laatste op B2 gaan staan en deleten, dan B3 selecteren.

Alles gaat goed alleen het begin niet. want regel 11,10,9,enz worden ook gewoon verwijderd en opnieuw geplakt. De fout dus denk ik in het rood gekleurde. Als 11 op 13 zet wordt ook gewoon op rij 11 heen gekopieert en dan mag dus niet. Als deze op 14 zet gaat het de keer macro klikken wel goed, maar de 2e keer wordt rij 13 niet verwijderd om hij dus pas vanaf 14 gaat verwijderen.

Code:
Sub KostenoverzichtSelectie()
[COLOR="Red"]With Sheets("Kostenoverzicht").Range("A" & Rows.Count).End(xlUp)
     If .Row > [COLOR="darkgreen"]11[/COLOR] Then .EntireRow.Delete
End With[/COLOR]
Sheets("Kostenoverzicht").Range("7:7").Copy
Sheets("Kostenoverzicht").Range("A" & Rows.Count).End(xlUp).Offset(1).PasteSpecial xlValues
Sheets("Kostenoverzicht").Range("A" & Rows.Count).End(xlUp).Offset(0).PasteSpecial xlFormats
    Rows("11:11").Select
    Selection.EntireRow.Hidden = False
Sheets("Kostenoverzicht").Range("11:11").Copy
Sheets("Kostenoverzicht").Range("11:11").Copy
Sheets("Kostenoverzicht").Range("A" & Rows.Count).End(xlUp).Offset(1).PasteSpecial xlValues
Sheets("Kostenoverzicht").Range("A" & Rows.Count).End(xlUp).Offset(0).PasteSpecial xlFormats
    Rows("11:11").Select
    Selection.EntireRow.Hidden = True
Range("B2").ClearContents
Range("B3").Select
End Sub

Ik hoop dat het een beetje duidelijk is, tis een beetje lastig uitleggen. Hoop toch dat iemand mij kan helpen.

Groet mike
 
Probeer eens

With Sheets("Kostenoverzicht").Range("A12" & Rows.Count).End(xlUp)

Doe ook maar effe een schot in het wild ;p

Gr martijn
 
mag er een voorbeeldbestandje bij?

En heb je al eens geprobeerd om regel voor regel door je code heen te lopen met door op F8 te drukken? Je kunt dan per regel zien wat het effect is in het werkblad, vaak is dat al heel verhelderend.
 
De rows die je niet mag verwijderen hebben dus altijd dezelfde waarde.
Waarom plaats je die dan niet op een andere sheet?
Of maak een back up van ze o peen andere sheet en haal je daar op via de macro.

Het is omslachtig maar het werkt ook.

Je kan nu rustig alle rows verwijderen zonder bang te zijn dat je data verliest.
 
Hallo

Misschien dat je hier iets aan hebt.
Code:
  For j = Sheets("Kostenoverzicht").UsedRange.Rows.Count To 11 Step -1
    Rows(j).EntireRow.Delete
  Next
Met vr gr
Jack
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan