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

bereik van een autofilter in vba

Status
Niet open voor verdere reacties.

marjann

Gebruiker
Lid geworden
16 mei 2008
Berichten
10
Geplaatst: Vandaag, om 12:55 Onderwerp: bereik van een autofilter in vba

--------------------------------------------------------------------------------

Hallo nogmaals,

Ik heb nog een vraag waar ik al uuuuren op worstel: het bereik van een autofilter.

Het filter krijg ik wel voor elkaar met :
Selection.AutoFilter Field:=(ActiveCell.Column) - 1, Criteria1:="<>", Operator:=xlAnd, Criteria2:="<>0"

Maar ik wil alleen de cellen uit die kolom kopieeren. Ik heb deze gevonden:
Set rng = ActiveSheet.AutoFilter.Range
rng.Offset(1, 0).Resize(rng.Rows.Count - 1).Copy
Maar dan krijg ik alle kolommen van dat bereik.

met:

Range(Selection, Selection.End(xlDown)).Select

selecteert hij maar 1 rij terwijl het er meer zijn!

Heeft iemand een idee/ oplossing?

Marjan
 
Code:
rng.Offset(1, 0).Resize(rng.Rows.Count - 1[B][U], 1[/U][/B]).Copy
 
Dat leek even heel makkelijk... maar helaas. Zo krijg ik deze eerste kolom van het bereik. En ik wil de kolom waarop de selectie is gemaakt met het filter.

Marjan
 
Nog eens een Offset ertussen zetten dan.

En vergeet niet de SpecialCells(xlCellTypeVisible) ertussen te zetten.
 
Laatst bewerkt:
Je bent vergeten om SpecialCells te gebruiken.

Code:
Selection.autofilter Field:=(ActiveCell.Column) - 1, Criteria1:="<>", Operator:=xlAnd, Criteria2:="<>0"
Set rng = ActiveSheet.autofilter.Range
rng.Offset(1, 0).Resize(rng.Rows.Count - 1).SpecialCells (xlCellTypeVisible)
   Range("A1").Offset(1, 0).Resize(rng.Rows.Count - 1).Copy

Met vriendelijke groet,


Roncancio
 
Bedankt Roncancio, dan nog maar even schamen... maar ik krijg nog steeds de eerste kolom van mijn bereik en ik wil de kolom waar ik op geselecteerd heb....

Alvast bedankt,
Marjan
 
Code:
Selection.autofilter Field:=(ActiveCell.Column) - 1, Criteria1:="<>", Operator:=xlAnd, Criteria2:="<>0"
Set rng = ActiveSheet.autofilter.Range
rng.Offset(1, ActiveCell.Column - 1).Resize(rng.Rows.Count - 1,1).SpecialCells(xlCellTypeVisible).Copy
 
Bedankt Roncancio, dan nog maar even schamen... maar ik krijg nog steeds de eerste kolom van mijn bereik en ik wil de kolom waar ik op geselecteerd heb....

Alvast bedankt,
Marjan

Ah. Een misverstand.

Zo ?
Code:
Selection.AutoFilter Field:=(ActiveCell.Column) - 1, Criteria1:="<>", Operator:=xlAnd, Criteria2:="<>0"
Set rng = ActiveSheet.AutoFilter.Range
rng.Offset(1, 0).Resize(rng.Rows.Count - 1).SpecialCells (xlCellTypeVisible)
   Cells(1, ActiveCell.Column).Offset(1, 0).Resize(rng.Rows.Count - 1).Copy

Met vriendelijke groet,


Roncancio
 
Bij de code van Wigi krijg ik foutmelding 1004.
Die van Roncancio komt in de buurt. :confused:
Alleen neemt die ook nog de cellen boven het filter mee. Het filter staat op rij 17...
 
Hebbes!

Set rng = ActiveSheet.AutoFilter.Range
rng.Offset(1, 0).Resize(rng.Rows.Count - 1).SpecialCells (xlCellTypeVisible)
Cells(17, ActiveCell.Column).Offset(1, 0).Resize(rng.Rows.Count - 1).Select

Hartelijk dank! :thumb:
 
Bij de code van Wigi krijg ik foutmelding 1004.
Die van Roncancio komt in de buurt. :confused:
Alleen neemt die ook nog de cellen boven het filter mee. Het filter staat op rij 17...

Dan lijkt het mij een kwestie van de regel aanpassen. Dus:

Code:
Selection.AutoFilter Field:=(ActiveCell.Column) - 1, Criteria1:="<>", Operator:=xlAnd, Criteria2:="<>0"
Set rng = ActiveSheet.AutoFilter.Range
rng.Offset(1, 0).Resize(rng.Rows.Count - 1).SpecialCells (xlCellTypeVisible)
   Cells([COLOR="Red"][B]17[/B][/COLOR], ActiveCell.Column).Offset(1, 0).Resize(rng.Rows.Count - 1).Copy

Met vriendelijke groet,


Roncancio
 
Doe eens een voorbeeldbestandje want ik wil weten waarom dat van mij niet werkte.

Die van jullie lijken mij trouwens omslachtig. Vanwaar komt die 17 ineens?
 
Allebei een reactie om 15:17!!
:shocked::shocked::shocked: Dat moet een fotofinish zijn geweest. :p:D

Gaarne de vraag op opgelost zetten.
Bvd.

Met vriendelijke groet,


Roncancio
 
Doe eens een voorbeeldbestandje want ik wil weten waarom dat van mij niet werkte.

Die van jullie lijken mij trouwens omslachtig. Vanwaar komt die 17 ineens?

De kop van de autofilter staat op regel 17, vandaar.

Met vriendelijke groet,


Roncancio
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan