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

Copieeren via macro naar eerstvolgende blanco rij

Status
Niet open voor verdere reacties.

ericeul

Gebruiker
Lid geworden
14 feb 2008
Berichten
53
Hallo,
ik heb een weekplanning die (uiteraard) elke week wijzigt. Vooraleer deze wordt gewijzigd wil ik de gegevens van de afgelopen week via een macro kopieeren naar een ander workbook waar alle gegevens systematisch worden bijgehouden tbv analyse.
Om te vermijden dat hij de gegevens van de vorige week overschrijft moet het gekopieerd worden naar de éérstvolgende blanco rij. En dit elke week opnieuw zodat ik op het eind van de maand de 4 weken chronologisch onder elkaar heb staan.
Kan iemand me de oplossing bezorgen?
Ik heb een vbtje van de tabel in bijlage.
Alvast bedankt
Eric
 

Bijlagen

Ericeul, Het vinden van de laatste lege regel in een tabel doe je met
Code:
Cells(rows.count, 1).End(xlUp).Offset(1)
Waarbij de '1' in 'Cells' staat voor de 1e kolom. Als je in een andere kolom moet testen voor de laatste regel zal je dat cijfer moeten aanpassen.

Groet, Leo

P.s. het is makkerlijker voor de helpers om een .xls als bijlage te hebben....
 
Laatst bewerkt:
Cells(Rows.Count, 1).End(xlUp).Offset (1)

Bedankt Ginger voor je snelle antwoord.
Heb "Cells(Rows.Count, 1).End(xlUp).Offset (1)" in een testmacrootje gestoken maar hij loopt erop vast.

Code:
Range("A2").Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
Sheets("Blad2").Select
Cells(Rows.Count, 1).End(xlUp).Offset (1)
ActiveSheet.Paste
Ben dan ook maar een leek.

Heb jij enig idee?

Alvast bedankt

Eric

Eric
 
Laatst bewerkt door een moderator:
Dit werkt wel:

Code:
Sub wigi()
    Range("A2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    Selection.Copy
    Sheets("Blad2").Select
    Cells(Rows.Count, 1).End(xlUp).Offset(1).Select
    ActiveSheet.Paste
End Sub

Wigi
 
Kijk je ook naar efficiëntie, en niet enkel of het werkt of niet, doe dan bvb.

Code:
Sub wigi()
    
    Range(Range("A2"), Range("A2").End(xlDown).End(xlToRight)).Copy Sheets("Blad2").Cells(Rows.Count, 1).End(xlUp).Offset(1)
    
End Sub

Wigi
 
Copieeren naar eerstvolgende blanco rij

Enkele weken geleden heb ik via het forum wat code verkregen om wekelijks een "weekplanning" weg te schrijven in een andere sheet genoemd "FEEDBACK"
Een week later moet de 2de week eveneens worden weggeschreven maar onder die van vorige week.
weer een week later de 3 de week onder de 2de....enz.
Na een jaar kan ik dan een analyse doen over 52 weekplanningen....
En uiteraard is elke week de planning anders.

Met onderstaande verkregen code had ik gehoopt dit te kunnen realiseren maar loop algauw vast.

Code:
Sub macro ()
    
Range(Range("A2"), Range("A2").End(xlDown).End(xlToRight)).Copy
Sheets("FEEDBACK").Cells(Rows.Count, 1).End(xlUp).Offset(1)
    
End Sub

Heeft iemand enig idee wat er misloopt?
 

Bijlagen

Laatst bewerkt door een moderator:
Ericeul, Je hebt je 'destination' op een nieuwe regel gezet. Da's niet de bedoeling. De methode Copy van het object Range heeft als (enig) argument 'Destination'. Ga maar 'ns aan het begin van die regel staan (dus vóór 'Sheets...) en druk op backspace zodat die regel ineens bij 'Copy' hoort óf zet een spatie + underscore achter het woord 'Copy' (dan koppel je de regels óók).

Let trouwens ff op: in de code in je workbook heb je bij Sheets een haakje teveel staan!

Groet, Leo
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan