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

Gezocht: Macro om gegevens te kopieren ipv knippen plakken

Status
Niet open voor verdere reacties.

dennio

Gebruiker
Lid geworden
20 jul 2010
Berichten
45
Hee,

Ik ben bezig met het verwerken van een hele hoop gegevens.
Ik heb een bestand met circa 60 sheets. Al deze gegevens wil ik op 1 sheet hebben staan.
Hoe kan ik dit het makkelijkste doen, zonder telkens het te moeten knippen en plakken.
Ik heb een klein voorbeeld toegevoegd.
In sheet 1 moeten de gegevens van sheet 2 en 3 komen te staan.

Alvast bedankt voor de moeite
 

Bijlagen

Zoiets:

Code:
Sub AllesNaarEen()
    Dim ws     As Worksheet
    For Each ws In Worksheets
        If ws.Name <> "Totaal" Then
            ws.UsedRange.Copy
            Sheets("Totaal").Cells(Sheets("Totaal").Cells(Rows.Count, 1).End(xlUp).Row, 1).PasteSpecial xlValues
        End If
    Next
End Sub
 
Hee EVR.

Bedankt voor uw reactie.
Het werkt bijna perfect.
Ik heb het toegepast op mijn bestand van circa 60 sheets.
Maar dan blijkt dat niet alle gegevens worden gekopieerd.
Ik mis steeds 1 regel van de gegevens.
Enig idee waar dat aan kan liggen?

Kun je me uitleggen hoe je het onderstaande voor elkaar hebt gekregen?
Dan leer ik er nog iets van, is altijd beter dan zomaar kopieren.

ws.UsedRange.Copy
Sheets("Totaal").Cells(Sheets("Totaal").Cells(Rows.Count, 1).End(xlUp).Row, 1).PasteSpecial xlValues

groeten
 
Oops voeg nog een +1 toe:

Code:
Sub AllesNaarEen()
    Dim ws     As Worksheet
    For Each ws In Worksheets
        If ws.Name <> "Totaal" Then
            ws.UsedRange.Copy
            Sheets("Totaal").Cells(Sheets("Totaal").Cells(Rows.Count, 1).End(xlUp).Row + 1, 1).PasteSpecial xlValues
        End If
    Next
End Sub

Usedrange = het gebruikte bereik in een werkblad en dat moet geplakt worden In sheets Totaal onder de laatst gebruikte cel in kolom A

Dus . cells (1,1) is cel A1 maar nu .Cells(Rows.Count, 1).End(xlUp).Row + 1, 1) geeft de eerst vrije cel in kolom A
 
Hee Erik,

Hij werkt nu perfect :)
Type je deze formule in of neem je deze stappen op?

Gr
 
Ok Thanks.

Heb je nog een bepaalde site waar ik deze tips/trucs kan leren.
Denk dat ik hier wel veel aan heb in de toekomst.

Ik kan nutuurlijk hier altijd wel de vraag posten, maar het is mooier/ leuker als je dat zelf kan.

PS ik zal deze vraag sluiten
 
Heb je nog een bepaalde site waar ik deze tips/trucs kan leren.

Bijvoorbeeld deze site, ;) Als je een vraag hebt zal ongetwijfeld het/een antwoord al een keer gegeven zijn, daarnaast is het (proberen) te helpen van vraagstellers wat mij betreft de beste leerschool. Vaak zijn er helpers met andere/betere/snellere oplossingen waar je dan ook weer van leert. :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan