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

Wachten op invoer

Status
Niet open voor verdere reacties.

Colombe

Gebruiker
Lid geworden
28 jan 2001
Berichten
754
Ik werk met een model waar ik regelmatig een wisselend aantal regels moet invoegen. Dat doe ik nu handmatig, maar ik zou dat graag met een makro doen. Helaas is mijn kennis van vba minimaal dus ik weet niet hoe ik een invoerpauze kan invoegen.
Wat ik dus wil is een makro die me vraagt hoeveel keer de huidige regel moet worden ingevoegd op de plek van de cursor.
 
Is dit voldoende?
Code:
Sub cobbe()
  aantalrijen = InputBox("Hoeveel rijen wil je invoegen?")
   With ActiveCell
     For i = 1 To aantalrijen
       EntireRow.Insert
     Next
   End With
End Sub
 
Bedankt Cobbe voor je snelle reactie. Helaas krijg ik een foutmelding 424. EntireRow.Insert is gemarkeerd. Weet jij wat er fout is?
 
Ja! daar moet een . voorgezet worden, is er waarschijnlijk onderweg afgevallen. :)
 
Punt toegevoegd en het werkt. Alleen wil ik graag de huidige regel (met formules en zo) invoegen en niet een lege regel, zoals nu.
 
Misschien met een kleine aanpassing?
Code:
Sub cobbe()
  aantalrijen = InputBox("Hoeveel rijen wil je invoegen?")
    For i = 1 To aantalrijen
     With ActiveCell
       .EntireRow.Copy
       .EntireRow.Insert
    End With
    Next
End Sub
 
Dat was de bedoeling.
Zou het ook mogelijk zijn om de rijen in één keer tussen te voegen? Nu wordt de invoeging per regel gedaan en als er 20 moeten worden ingevoegd in een groot en vol worksheet duurt dat best wel lang. En dan zou ik ook nog graag willen dat de regels onder de huidige regel worden ingevoegd ipv erboven. Voor mij te ingewikkeld, maar voor jou hoop ik niet.
 
Je kan de schermopbouw uitstellen tot het einde van de macro,
maar de traagheid zit niet in de code maar in de berekening van uw bestand.
Je kan eens testen met de berekening op handmatig te zetten om het verschil te zien.
Code:
Sub cobbe()
  aantalrijen = InputBox("Hoeveel rijen wil je invoegen?")
 With Application
     .ScreenUpdating = False
    For i = 1 To aantalrijen
    With ActiveCell
       .EntireRow.Copy
       .EntireRow.Insert
    End With
    Next
     .ScreenUpdating = True
 End With
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan