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

Automatisch kolommen kopiëren en plakken

Status
Niet open voor verdere reacties.

Ocirne

Gebruiker
Lid geworden
6 okt 2015
Berichten
67
Hallo,

Graag zou ik de volgende handelingen willen automatiseren:
- kopieer de laatste twee met gegevens gevulde kolommen en plak die in de eerstvolgende lege kolommen.

Stel, de kolommen A en B zijn de enige twee kolommen gevuld met gegevens. De macro zou dan het volgende moeten doen:
- selecteer A:B en plak deze (met opmaak en formules) in C : D
Als de macro daarna opnieuw wordt gedraaid:
- selecteer C : D en plak in E:F
etc.

Wie kan mij op weg helpen?

Alvast bedankt.

Mvg,

Ocirne
 
Probeer deze eens

Code:
Sub VenA()
Columns(UsedRange.Columns.Count).Offset(, -1).Resize(, 2).Copy Columns(UsedRange.Columns.Count).Offset(, 1)
End Sub
 
Hi VenA,

Ik krijg een pop-up met de volgende compileerfoutmelding: "Een variabele is niet gedefinieerd" waarbij de tweede 'UsedRange' wordt gehighlight. Waardoor komt dat?

Thx.

Ocirne
 
Geen idee ik krijg het niet.

Probeer het zo eens

Code:
Sub VenA()
With Blad1
    .Columns(.UsedRange.Columns.Count).Offset(, -1).Resize(, 2).Copy .Columns(.UsedRange.Columns.Count).Offset(, 1)
End With
End Sub

of
Code:
Sub VenA()
With Blad1
    lc = .Cells(1, Columns.Count).End(xlToLeft).Column
    .Columns(lc).Offset(, -1).Resize(, 2).Copy .Columns(lc).Offset(, 1)
End With
End Sub

En anders even een voorbeeldbestandje plaatsen.
 
Hi VenA,

Het lukt me niet. Ik heb daarom een vb-bestand bijgevoegd met de kolommen die steeds moeten worden gekopieerd en geplakt zodra de macro wordt geactiveerd.

Hopelijk heb je suggesties hoe het kan worden opgelost.

Mvg,

Ocirne
 

Bijlagen

Gebruik geen samengevoegde cellen. Ik begrijp niet wat dit voorbeeld met de vraag te maken heeft. Wat moet er gekopieerd worden?
 
In mijn voorbeeldbestand moet de macro de kolommen A:G gekopieerd worden naar H:N. Als de macro opnieuw wordt gedraaid: kopie van kolommen H:N naar O:U, etc.
 
Probeer deze dan maar eens.

Code:
Sub VenA()
With Blad1
    .Columns(.UsedRange.Columns.Count).Offset(, -6).Resize(, 7).Copy .Columns(.UsedRange.Columns.Count).Offset(, 1)
End With
End Sub
 
Dit werkt perfect! Thanks!

Toch nog een vraag: waar verwijst de '-6' naar in de eerste offset?

Mvg,

Ocirne
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan