Avatar billede rene_andersen Nybegynder
17. juli 2009 - 13:49 Der er 5 kommentarer og
1 løsning

Kode til at gå én række ned i et filtreret område

Jeg ønsker at lave en kommandoknap til at aktivere et autofilter og herefter kopiere det filtrerede område over på et nyt ark. Jeg kan fint få den til automatisk at aktivere filteret, men har problemer med at få de rigtige data over på et nyt ark.

Da det er et dynamisk område og jeg kun ønsker de filtrerede celler har jeg brug for en kode der gør følgende: Markerer overskriften (celle A1), går én række ned og derefter markerer helt til bunden af området. Jeg har klaret det meste med makro-optageren, men kan ikke få den til at registrere at jeg går én række ned..

Når jeg bruger makro-optageren og placerer mig i celle A1, bruger piletasten til at gå én række ned og derefter markerer alle rækkerne herunder skriver den dette:

    Range("A6").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy

Dvs. den springer mit indledende ryk fra A1 til A6 over.. Hvilket er et problem da det ikke altid vil være A6 der er den øverste celle..

Håber der er nogle der ligger inde med en løsning!
Avatar billede excelent Ekspert
17. juli 2009 - 14:01 #1
prøv med denne

Range("A1:A" & Cells(65536, 1).End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy Sheets("Ark2").Range("A1")
Avatar billede excelent Ekspert
17. juli 2009 - 14:12 #2
obs mit indlæg er kun på 1 linie
Avatar billede rene_andersen Nybegynder
17. juli 2009 - 14:39 #3
Denne giver desværre samme resultat som mit eget forslag..

Problemet er at finde starten af området - med denne og min egen får jeg overskriften med, hvilket jeg IKKE skal..
Avatar billede excelent Ekspert
17. juli 2009 - 14:56 #4
er overskriften 1 linie og hvis, er det så altid række 1
Avatar billede rene_andersen Nybegynder
17. juli 2009 - 15:01 #5
Hey!

Jeg kunne se at der var oprettet et andet spm angående filtrerede områder, hvor du også var behjælpelig, og ved at kigge lidt på den tråd og det svar du gav mig er jeg nået frem til en løsning:

Range("A2:A" & Cells(65536, 1).End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy

Den starter kun fra A6 fordi det er den første synlige celle - så smid et svar, så skal du få dine points!

Mange tak for hjælpen..
Avatar billede excelent Ekspert
17. juli 2009 - 15:42 #6
ok velbekom
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester