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

Hoe plak ik mijn gegevens onderaan in lijst

Status
Niet open voor verdere reacties.

Peppi210

Gebruiker
Lid geworden
13 mei 2008
Berichten
9
Ik wil een macro maken waarbij ik een regel knip in sheet 1 en die vervolgens plak in sheet 2, maar dan onderaan de (groeiende) lijst. Ik heb al een en ander geprobeerd maar verwijzing naar "last cel" is schijnbaar wat anders want die komt steeds niet op de plek die ik wil. Ook geprobeerd met de zoekfunktie (ik geef dan de laatste cel een inhoudsnaam en laat die zoeken en vervolgens erboven plaatsen) maar ook dat gaat mis. Dat wil zeggen, dat lukt wel maar als ik het opneem als macro gaat dat 1 keer goed en daarna geeft die foutmeldingen.
Wie weet een oplossing voor dat "onderaan" de lijst komen en plakken vanuit een macro.
Peppi
 
Ik wil een macro maken waarbij ik een regel knip in sheet 1 en die vervolgens plak in sheet 2, maar dan onderaan de (groeiende) lijst. Ik heb al een en ander geprobeerd maar verwijzing naar "last cel" is schijnbaar wat anders want die komt steeds niet op de plek die ik wil. Ook geprobeerd met de zoekfunktie (ik geef dan de laatste cel een inhoudsnaam en laat die zoeken en vervolgens erboven plaatsen) maar ook dat gaat mis. Dat wil zeggen, dat lukt wel maar als ik het opneem als macro gaat dat 1 keer goed en daarna geeft die foutmeldingen.
Wie weet een oplossing voor dat "onderaan" de lijst komen en plakken vanuit een macro.
Peppi

Je kunt gebruik maken van End([richting]).
Voorbeeld.
Code:
SchrijfRij = Range("A65536").End(xlUp).Row + 1
Stel dat je ingevuld hebt A1 t/m A17.
Met bovenstaande formule wordt de SchrijfRij rij 17 (van A17) gevonden + 1 dus 18.
De volgende keer rij 18 (is zojuist ingevuld) + 1 is 19.

Je moet + 1 gebruiken anders wordt je laatste regels telkens overschreven.
Alles zou dan steeds in rij 17 geplaatst worden.

Met vriendelijke groet,


Roncancio
 
Met dank voor snelle reactie maar helaas lukt me het nog niet.
Heb de code eerst in de macro gezet maar toen dat niet werkte enkel de code als macro. Als ik die run gebeurt er echter niets. Wat doe ik fout?
Totale macro moet dus worden:
Ga naar sheet1, regel25
selecteer hele regel en kopieer
ga naar sheet 2 en naar de laatst ingevulde regel + 1
plak regel

Je kunt gebruik maken van End([richting]).
Voorbeeld.
Code:
SchrijfRij = Range("A65536").End(xlUp).Row + 1
 
Met dank voor snelle reactie maar helaas lukt me het nog niet.
Heb de code eerst in de macro gezet maar toen dat niet werkte enkel de code als macro. Als ik die run gebeurt er echter niets. Wat doe ik fout?
Totale macro moet dus worden:
Ga naar sheet1, regel25
selecteer hele regel en kopieer
ga naar sheet 2 en naar de laatst ingevulde regel + 1
plak regel

Je kunt gebruik maken van End([richting]).
Voorbeeld.
Code:
SchrijfRij = Range("A65536").End(xlUp).Row + 1

Onderstaande code selecteer rij 25 van blad1 en zet deze onderaan de lijst in blad2.

Code:
Sub Wegschrijven()

Dim iSchrijfRij As Integer
    iSchrijfRij = Sheets("Blad2").Range("A65536").End(xlUp).Row + 1
    Worksheets(1).Range("25:25").Copy Worksheets(2).Range(iSchrijfRij & ":" & iSchrijfRij)
End Sub

Met vriendelijke groet,


Roncancio
 
Fantastisch, werkt. Als beginnend Macroschrijvertje snap ik er niets van maar doet het. Dank. Nog een aanvulling. Als ik de te kopieren regel wil plakken als value wat moet ik dan toevoegen? En als ik een knop met de macro op blad 1 zet maar na het uitvoeren van de macro op blad 2 uit wil komen? Dat ik dus direct de gekopieerde regel in zicht heb?
Hopelijk niet teveel gevraagd maar je hebt me enorm geholpen:thumb:.
Nogmaals dank
Peppi


Code:
Sub Wegschrijven()

Dim iSchrijfRij As Integer
    iSchrijfRij = Sheets("Blad2").Range("A65536").End(xlUp).Row + 1
    Worksheets(1).Range("25:25").Copy Worksheets(2).Range(iSchrijfRij & ":" & iSchrijfRij)
End Sub
 
Fantastisch, werkt. Als beginnend Macroschrijvertje snap ik er niets van maar doet het. Dank. Nog een aanvulling. Als ik de te kopieren regel wil plakken als value wat moet ik dan toevoegen? En als ik een knop met de macro op blad 1 zet maar na het uitvoeren van de macro op blad 2 uit wil komen? Dat ik dus direct de gekopieerde regel in zicht heb?
Hopelijk niet teveel gevraagd maar je hebt me enorm geholpen:thumb:.
Nogmaals dank
Peppi


Code:
Sub Wegschrijven()

Dim iSchrijfRij As Integer
    iSchrijfRij = Sheets("Blad2").Range("A65536").End(xlUp).Row + 1
    Worksheets(1).Range("25:25").Copy Worksheets(2).Range(iSchrijfRij & ":" & iSchrijfRij)
End Sub

Als het goed is, worden de values al overgenomen.
Wil je op het 2e werkblad uitkomen dan dien je het vetgedrukte gedeelte toe te voegen aan de code.

Code:
Sub Wegschrijven()

Dim iSchrijfRij As Integer
    iSchrijfRij = Sheets("Blad2").Range("A65536").End(xlUp).Row + 1
    Worksheets(1).Range("25:25").Copy Worksheets(2).Range(iSchrijfRij & ":" & iSchrijfRij)
    [B]Worksheets(2).Activate[/B]
End Sub

Met vriendelijke groet,


Roncancio
 
Code:
Sub Wegschrijven()

    Dim iSchrijfRij As Long
    iSchrijfRij = Sheets("Blad2").Range("A" & Rows.Count).End(xlUp).Row + 1
    
    Sheets(1).Rows(25).Copy
    Sheets("Blad2").Rows(iSchrijfRij).PasteSpecial xlValues
    Application.CutCopyMode = False
    Application.Goto Sheets("Blad2").Range("A1"), True
    
End Sub

Wigi
 
Op een of andere manier schreef die hem toch niet weg als value (kreeg #REF).
Heb nu het volgende gedaan en misschien niet de kortste weg maar het werkt in ieder geval. Mijn eerste forum bezoek vandaag is mij uitstekend bevallen.
Dank
Peppi


Sub Wegschrijven()

Rows("47:47").Select
Selection.Copy
Rows("46:46").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Dim iSchrijfRij As Integer
iSchrijfRij = Sheets("Studio").Range("A65536").End(xlUp).Row + 1
Worksheets("Inschrijf").Range("46:46").Copy Worksheets("Studio").Range(iSchrijfRij & ":" & iSchrijfRij)
Worksheets("Studio").Activate
End Sub
 
En heb je mijn voorstel uitgeprobeerd? Want volgens mij moet dat echt wel werken hoor.

Probeer .Select te vermijden in de code.

En ook variabelen eerst te declareren bovenaan in de code.

Als je vindt dat het opgelost is, dan mag je de vraag ook op opgelost zetten. Zie rechts onderaan de pagina.

Wigi
 
Laatst bewerkt:
Ha, als beginnend forumbezoekertje had ik niet eens gemerkt dat er nog meer hulptroepen zich hadden aangemeld. Heb code van Wigi uitgetest en resultaat: helemaal OK Werkt fantastisch.
Heren (gok ik)....nogmaals dank



En heb je mijn voorstel uitgeprobeerd? Want volgens mij moet dat echt wel werken hoor.

Probeer .Select te vermijden in de code.

En ook variabelen eerst te declareren bovenaan in de code.

Als je vindt dat het opgelost is, dan mag je de vraag ook op opgelost zetten. Zie rechts onderaan de pagina.

Wigi
 
En heb je mijn voorstel uitgeprobeerd? Want volgens mij moet dat echt wel werken hoor.



Nog even terugkomend op vorige. Dat werkte prima.
Nu ben ik zelf aan het sleutelen gegaan voor een andere macro die niet een gedefinieerde rij verplaatst maar die rij waarin een cel geactiveerd is. Dit leek me dus wel wat, maar het werkt niet. Wat is er fout? Hij loopt namelijk vast bij: Sheets("Print").Rows(iSchrijfRij).PasteSpecial xlValues en dat werkte zo perfect bij de vorige oplossing.

Sub VerplaatsnaarPrint()
'
' Macro4 Macro
' Macro recorded 15-05-2008 by Peppi verkaar
'

'
Dim iSchrijfRij As Long
iSchrijfRij = Sheets("Print").Range("A" & Rows.Count).End(xlUp).Row + 1

Sheets("Studio").Rows("1:1").EntireRow.Select
Selection.Cut
Sheets("Print").Rows(iSchrijfRij).PasteSpecial xlValues
Application.CutCopyMode = False
Application.Goto Sheets("Print").Range("A1"), True

End Sub
 
Peppi210, De 'Cut' methode werkt niet samen met PasteSpecial...

Groet, Leo
 
Zo bvb.

Code:
Sub VerplaatsnaarPrint()

Dim iSchrijfRij As Long
iSchrijfRij = Sheets("Print").Range("A" & Rows.Count).End(xlUp).Row + 1

[B]Sheets("Studio").Rows(1).EntireRow.Copy[/B]
Sheets("Print").Rows(iSchrijfRij).PasteSpecial xlValues
[B]Sheets("Studio").Rows(1).EntireRow.ClearContents[/B]
Application.CutCopyMode = False
Application.Goto Sheets("Print").Range("A1"), True

End Sub

ongeteste code
 
Deze knipt en plakt regel 1 uit "Studio" naar "Print".
Ik zoek de mogelijkheid om een willekeurige cel in "Studio" te activeren, Dat die hele regel dan naar onderaan de lijst in "print" gaat, en vervolgens die regel in "Studio" verwijderd wordt (en de gegevens eronder dus omhoog komen)


Zo bvb.

Code:
Sub VerplaatsnaarPrint()

Dim iSchrijfRij As Long
iSchrijfRij = Sheets("Print").Range("A" & Rows.Count).End(xlUp).Row + 1

[B]Sheets("Studio").Rows(1).EntireRow.Copy[/B]
Sheets("Print").Rows(iSchrijfRij).PasteSpecial xlValues
[B]Sheets("Studio").Rows(1).EntireRow.ClearContents[/B]
Application.CutCopyMode = False
Application.Goto Sheets("Print").Range("A1"), True

End Sub

ongeteste code
 
Laatst bewerkt:
Code:
Sub VerplaatsnaarPrint()

Dim iSchrijfRij As Long
iSchrijfRij = Sheets("Print").Range("A" & Rows.Count).End(xlUp).Row + 1

[B]Selection.EntireRow.Copy[/B]
Sheets("Print").Rows(iSchrijfRij).PasteSpecial xlValues
[B]Selection.EntireRow.Delete[/B]
Application.CutCopyMode = False
Application.Goto Sheets("Print").Range("A1"), True

End Sub

ongeteste code
 
Perfect, dank. Ga nu ook steeds meer snappen van de opzet.

Code:
Sub VerplaatsnaarPrint()

Dim iSchrijfRij As Long
iSchrijfRij = Sheets("Print").Range("A" & Rows.Count).End(xlUp).Row + 1

[B]Selection.EntireRow.Copy[/B]
Sheets("Print").Rows(iSchrijfRij).PasteSpecial xlValues
[B]Selection.EntireRow.Delete[/B]
Application.CutCopyMode = False
Application.Goto Sheets("Print").Range("A1"), True

End Sub

ongeteste code
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan