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

kopieren mbv makro

Status
Niet open voor verdere reacties.

stefano

Gebruiker
Lid geworden
22 mei 2004
Berichten
865
Graag vernam ik hoe data die automatisch geselekteerd werden mat autofilter , gekopieerd kunnen worden naar een ander bestand.

dank bij voorbaat,

stefano
 
Hallo Stefano


Na Autofilter maakt Excel automatisch een soort verborgen range aan met als naam

SheetName!_FilterDatabase

Veronderstel je doet Autofilter op gegevens van Sheet1 en je wilt deze copiëren naar Sheet2 Cel A1.

Gebruik dan volgende instructie in je macro:

Range("Sheet1!_FilterDatabase").Copy Destination:=Worksheets("Sheet2").Range("A1")

Kan dit je verder helpen?

Groetjes van Martin & Rosine
 
Stefano,

Ter aanvulling dit nog:

De instructie

Range("Sheet1!_FilterDatabase").Copy Destination:=Worksheets("Sheet2").Range("A1")

copieert het resultaat van je autofilter samen met de kolomnamen.

Om enkel de gegevensrijen te copieren kan je gebruik maken van OFFSET

Range("Sheet1!_FilterDatabase").Offset(1).Copy Destination:=Worksheets("Sheet2").Range("A1")

Daarmee wordt er echter één extra rij gecopieert. Om dit te vermijden kunnen we de “ge-offsette range resizen”:

Range("Sheet1!_FilterDatabase").Offset(1).Resize(Range(“Sheet1_FilterDatabase”.Rows.Count –1).Copy Destination:=Worksheets("Sheet2").Range("A1")

Groetjes van Martin & Rosine
 
Sorry, haakje vergeten in vorig bericht.

Laatste instructie moet zijn

Range("Sheet1!_FilterDatabase").Offset(1).Resize(Range(“Sheet1_FilterDatabase”).Rows.Count –1).Copy Destination:=Worksheets("Sheet2").Range("A1")

Groetjes van Martin & Rosine
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan