Avatar billede hawkpapa Juniormester
14. marts 2012 - 13:59 Der er 34 kommentarer og
1 løsning

Skjule/fjerne en række, når der er sat X i sidste kolonne

Hej Eksperter
Jeg har et regneark med flere rækker og kolonner A B C D E F G H I.
Jeg vil gerne have have, at når man sætter et X i I kolonnen ud for feks række 11, så bliver række 11 skjult, kan det lade sig gøre ?? Og hvordan.
Jeg er rimelig grøn i Excel, så gerne så simpelt som muligt.
På forhånd tak for hjælpen.
Avatar billede store-morten Ekspert
14. marts 2012 - 18:27 #1
Denne makro skjuler de rækker, om hvilke det gælder, at der står x i I-kolonnen.

Sub SkjulRk()
    For Each c In Range("I1:I100").Cells
        If c.Value = "x" Then
            c.EntireRow.Hidden = True
        End If
    Next c
End Sub
Avatar billede hawkpapa Juniormester
14. marts 2012 - 18:38 #2
Hej
Hvor skal det sættes ind henne? ? Er som sagt helt grøn i Excel, og hvad er makroer? ?
Avatar billede store-morten Ekspert
14. marts 2012 - 18:48 #4
Kopier koden.
I Excel --> højreklik på arkfanen (nederst hvor der står Ark1)
Vælg "Vis programkode" tryk og hold ctrl nede og tryk på tasten v
Luk på det røde kryds.

Hvilken Excel version har du?
Avatar billede hawkpapa Juniormester
14. marts 2012 - 21:36 #5
2007, det bliver prøvet i morgen. Vil det sige  at når man får sådan en kode som den her, er det bare at gå ind på arket og følge din beskrivelse? Det tror jeg lige jeg kan finde ud af. Jeg har set flereandre koder ligesom den af din, men bare til nogle andre ting, er det også bare at kopier det ind i arket på samme måde.
Er det det her man kalder makroer?
Jeg siger i hvertfald tak for hjælpen indtil videre, som sagt prøver jeg det først i morgen.
Avatar billede hawkpapa Juniormester
14. marts 2012 - 21:39 #6
Har lige set linket på dit svar, jeg sover vist lidt, tak endnu en gang
Avatar billede jime_boy Nybegynder
15. marts 2012 - 12:44 #7
Du kan jo også bare lave et autofilter og vælge at foruden X i den kolonne. Så behøver man ikke at bruge VBA kode.
Avatar billede hawkpapa Juniormester
15. marts 2012 - 14:55 #8
@jime_boy, hvordan gør man det ??
Er som sagt meget grøn i Excel.
Gerne en udførlig beskrivelse.
På forhånd tak
Avatar billede hawkpapa Juniormester
15. marts 2012 - 15:12 #10
Hej store-morten
Jeg kan sgu ikke få det til at virke, jeg kopier koden ind og lukker ned og gemmer arket, når jeg åbner det igen aktiverer jeg makroer, men det virker ikke. Det var egentlig i kolonne J jeg skulle bruge det, men det virker ikke i kolonne I, jeg har prøvwet at rette i koden så der står J i steder for I, men det hjælper ikke. Gad vide havd jeg gør galt. ??
Avatar billede jime_boy Nybegynder
15. marts 2012 - 15:34 #11
Det er nok fordi at du ikke gemmer det som et ark med makroer...

Men hvis du skal sætte filter skal du markere den rækker du har dine overskrifter i og trykke på knappen filter i data fanen (excel 2007, kan ikke lige huske hvor den er i 2003 versionen)

Men det skulle være det.
Avatar billede hawkpapa Juniormester
15. marts 2012 - 16:16 #12
@jime_boy : jeg gemmer det som et ark med makroer, og jeg aktiverer makroer når jeg åbner det, men det duer sgu ikke :-(
Det med filter forstår jeg intet af, jeg skal skjule rækken hvor der står et X i kolonne J, hvordan gør jeg det ?
Avatar billede jime_boy Nybegynder
15. marts 2012 - 16:24 #13
hvilken version af excel bruger du ?
Avatar billede hawkpapa Juniormester
15. marts 2012 - 16:28 #14
2007 på job 2010 hjemme
Avatar billede jime_boy Nybegynder
15. marts 2012 - 16:42 #15
Ok at sætte filter på er simpelt

Det her gælder for 2007 versionen kender ikke til 2010 endnu.

1. marker den række som dine overskrifter er i
2. Vælg fanen data
3. klik på tragten "Filtrer"

Når du har gjort det skulle der gerne ved alle overskrifter nu være en knap med en  pil ned.

4. klik på filter knappen på den overskrift du ønsker at filtrere på og i det her tilfælde skal du sørge for at der ikke er hak i "X".
Avatar billede store-morten Ekspert
15. marts 2012 - 16:50 #16
For at det virker, skal du aktivere makroen, har du prøvet det?
Avatar billede store-morten Ekspert
15. marts 2012 - 16:53 #17
med aktivere mener jeg afspille makroen
Avatar billede hawkpapa Juniormester
15. marts 2012 - 16:55 #18
Hej Igen
Nu har jeg været ved at lege lidt med makroer, den som store:morten skrev virker faktisk bortset fra at den skal køre automatisk når der bliver trykket på enter knappen efter krydset er sat.
Tror der er lidt lys for enden af tunnelen ;-))
Avatar billede hawkpapa Juniormester
15. marts 2012 - 17:02 #19
store_morten, ja jeg har fået prøvet din makro og den virker fint når jag går ind og afspiller makroen, kan man lave det sådan at den kører automatisk når krydset er sat eller når man har trykket på enter knappen ?
Avatar billede store-morten Ekspert
15. marts 2012 - 17:05 #20
Avatar billede jime_boy Nybegynder
15. marts 2012 - 17:06 #21
Prøv at erstatte første linje i makro koden med

Private Sub Worksheet_Change()
Avatar billede store-morten Ekspert
15. marts 2012 - 17:10 #22
Private Sub Worksheet_Change(ByVal Target As Range)
      If Not Intersect(Range("J2:J100"), Target) Is Nothing Then
    For Each c In Range("J2:J100").Cells
        If c.Value = "x" Then
            c.EntireRow.Hidden = True
        End If
    Next c
      End If
End Sub
Avatar billede store-morten Ekspert
15. marts 2012 - 17:12 #23
Ret selv dit område til.

If Not Intersect(Range("J2:J100"), Target) Is Nothing Then
Gør at makroen afspilles når der ændres i J2:J100 ellers ikke.
Avatar billede hawkpapa Juniormester
15. marts 2012 - 17:18 #24
Tak for det, jeg kigger lige på det senere, tak for hjælpen indtil videre
Avatar billede hawkpapa Juniormester
15. marts 2012 - 21:53 #25
1000 tak det virker :-))
Så skal I sørme også have point, vil i smide et par svar
Avatar billede hawkpapa Juniormester
16. marts 2012 - 10:09 #26
Hej igen
Så har jeg fået et andet problem med før omtalte ark, nu skal jeg have sorteret kolonne H som består af datoer skrevet på følgende måde : 16.03.12 sådan at den ældste står øverst og hele rækken skal selvfølgelig følge med, og den skal gøre det automatisk.
Kan det lade sig gøre ??
Avatar billede store-morten Ekspert
16. marts 2012 - 16:42 #27
Velbekomme.
Avatar billede hawkpapa Juniormester
17. marts 2012 - 00:39 #28
Kan du hjælpe med det andet ??
Med at få den til at sorterer i dato orden i H kolonnen, gerne en makro der kører automatisk.
Avatar billede store-morten Ekspert
17. marts 2012 - 09:23 #29
Har kikket på det, 16.03.12 er ikke en "rigtig" dato? Kan du skrive den som 16-03-2012
Avatar billede hawkpapa Juniormester
17. marts 2012 - 09:34 #30
Øh, det ved jeg ikke, kan man skrive 16-03-12, jeg har ikke for meget plads. Men kan den ikke sorterer på 16.03.12 ?
Hvad med 160312 uden punktum ?
Tak fordi du gider kigge på det :-)
Avatar billede store-morten Ekspert
17. marts 2012 - 10:04 #31
Ja, skriv din dato som: 16-03-2012 og der er så igen problemer med at sorterer.
jeg har ikke for meget plads
Du kan gøre cellen større

160312 kan ikke sorteres som dato, de vil blive sorteret i nummer orden.
Avatar billede store-morten Ekspert
17. marts 2012 - 10:09 #32
Tip:
Hold ctrl og shift nede, og tryk på , (komma)
Så skriver Excel: DagsDato, i Dato format.
Avatar billede hawkpapa Juniormester
17. marts 2012 - 10:10 #33
ok, kan du lave en makro, hvis jeg skriver dato som 16-03-2012 ?
Den skal jo både sorterer og køre automatisk ?
Avatar billede store-morten Ekspert
17. marts 2012 - 10:14 #34
Kan du sende arket til mig på E-mail?
Adresse under profil
Avatar billede store-morten Ekspert
17. marts 2012 - 12:55 #35
Har lagt et forsøg i spørgsmål:
http://www.eksperten.dk/spm/959475
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

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