• 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.

lege regels verwijderen met VBA

  • Onderwerp starter Onderwerp starter ewh
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

ewh

Gebruiker
Lid geworden
7 jul 2010
Berichten
288
in een calculatie prgje

A14 tot K40 kan elke keer anders zijn qua lengte ( is afhankelijk wat de gebruiker heeft ingevoerd )
A41 cel naam is "schoon"

dmv van VBA willen wij graag dat we zoeken naar de cel "schoon" dan een regel hoger en alle regels verwijderen van 14: een regel hoger dan "schoon"
op deze wijze blijft het einde altijd in orde

in het voorbeeld bestandjeBekijk bijlage voorbeeldbestand regels verwijderen.xls wordt het duidelijker

wie kan helpen met de code
 
Ik zie nergens schoon staan.

Om A14 t/m K40 leeg te maken zonder de formules te verwijderen.
Code:
Sub VenA()
  Sheets("Blad1").Range("A14:K40").SpecialCells(2).ClearContents
End Sub
 
VenA
ik heb A14 de cel naam gegeven "schoon" nadat de gebruiker met behulp van BVA diverse calculatie regels heeft ingevoegd zal de cel A14 ( schoon ) naar beneden zakken , in het voorbeeldje is het A41 geworden

en het is echt de bedoeling dat alle regels van A15 tot een regel boven "schoon"( A41 in het voorbeeldje) dus regel 15 tot en met regel 40 verdwijnen
 
Er staat nergens schoon in het voorbeeldje. Dus plaats een relevant voorbeeldbestand. En wat is BVA?
 
Helaas, bij namen beheren staat nergens een gedefinieerde naam 'schoon'.
 
Zo?

Code:
Sub VenA()
  Sheets("Blad1").Range("A14:K" & Sheets("Blad1").[schoon].Row - 1).SpecialCells(2).ClearContents
End Sub
 
nee , ik wil graag de regels verwijderen. sorry
 
En wat als schoon in A14 of A15 staat?

Speel hier maar even mee
Code:
Sub VenA()
  If [schoon].Row > 14 Then Rows(15).Resize([schoon].Row - 14).Delete
  ThisWorkbook.Names("schoon").RefersToR1C1 = "=Blad1!R14C1"
End Sub

Misschien is het handig om in het voorbeeldbestand ook de code te zetten waarmee het geheel gevuld wordt.
 
Code:
sub hsv()
 Rows("16:" & [schoon].Row).Offset(-1).Delete
end sub
Of:
Code:
sub hsv()
  Range("a16", [schoon]).Offset(-1).EntireRow.Delete
end sub
 
HSV ik heb je eerste code gebruikt , werkt prima ( maar dat wist je natuurlijk al )

wel een vraag je geeft op Rows ("16:" ... werkt goed maar ik begrijp hem niet logisch zou toch zijn Rows("15:".....
 
Is het kwartje al gevallen?
 
ha ha ja het kwartje is gevallen Offset(-1)

maar mooi weer wat geleerd.
bedankt
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan