Avatar billede Alexander19 Nybegynder
19. februar 2014 - 19:20 Der er 13 kommentarer og
1 løsning

Skjule kolonne HVIS...

Når jeg i celle B2 skriver "Køb" skal kolonne E, F, G og H skjules.
og/eller
Når jeg i celle B2 skriver "Leje" skal kolonne C, D, G og H skjules.
og/eller
Når jeg i celle B2 skriver "Lease" skal kolonne C, D, E og F skjules.

Hvordan gør jeg det?

Jeg kan sende filen på mail, hvis det er...

På forhånd tak
Avatar billede Game_over_Goofy Nybegynder
19. februar 2014 - 19:56 #1
Prøv med følgende VBA:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If (Range("b2").Text = "Køb") Then
ActiveSheet.Columns("A:H").Hidden = False
ActiveSheet.Columns("E:H").Hidden = True
End If

If (Range("b2").Text = "Leje") Then
ActiveSheet.Columns("A:H").Hidden = False
ActiveSheet.Columns("C:D").Hidden = True
ActiveSheet.Columns("G:H").Hidden = True
End If

If (Range("b2").Text = "Lease") Then
ActiveSheet.Columns("A:H").Hidden = False
ActiveSheet.Columns("C:F").Hidden = True
End If

 
End Sub
Avatar billede store-morten Ekspert
19. februar 2014 - 20:00 #2
Måske:

Private Sub Worksheet_Change(ByVal Target As Range)

    If Range("B2") = "Køb" Then
        Columns("E:H").EntireColumn.Hidden = True
    Else
        Columns("E:H").EntireColumn.Hidden = False
    End If

    If Range("B2") = "Leje" Then
        Columns("C:D").EntireColumn.Hidden = True
        Columns("G:H").EntireColumn.Hidden = True
    Else
        Columns("C:D").EntireColumn.Hidden = False
        Columns("G:H").EntireColumn.Hidden = False
    End If

    If Range("B2") = "Lease" Then
        Columns("C:F").EntireColumn.Hidden = True
    Else
        Columns("C:F").EntireColumn.Hidden = False
    End If

End Sub
Avatar billede store-morten Ekspert
19. februar 2014 - 20:07 #3
Kopier koden.
I Excel
Tryk alt+F11
Dobbelt klik på det Ark makroen skal virke på.
Tryk ctrl+v og luk på det røde kryds.

(Udføres når der ændres i arket.)
Avatar billede store-morten Ekspert
19. februar 2014 - 20:47 #4
Denne er nok mere rigtig ;-)

Kopier koden her under.
I Excel
Tryk alt+F11
Dobbelt klik på det Ark makroen skal virke på.
Tryk ctrl+v og luk på det røde kryds.

(Udføres når der ændres i celle B2 i arket.)

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Range("B2"), Target) Is Nothing Then

        Columns("C:H").EntireColumn.Hidden = False

Select Case Target.Value
    Case Is = "Køb"
        Columns("E:H").EntireColumn.Hidden = True
    Case Is = "Leje"
        Columns("C:D").EntireColumn.Hidden = True
        Columns("G:H").EntireColumn.Hidden = True
    Case Is = "Lease"
        Columns("C:F").EntireColumn.Hidden = True
End Select

End If
End Sub
Avatar billede Alexander19 Nybegynder
19. februar 2014 - 21:00 #5
Jeg takker, men problemet er at fra kolonne A til og med H, skal kopieres masser af gange derudaf, hvor jeg også gerne vil have mulighed for at skrive Køb/Leje/Lease. Hvordan faen gør jeg det?
Avatar billede store-morten Ekspert
19. februar 2014 - 21:06 #6
Ikke forstået?
Avatar billede Alexander19 Nybegynder
19. februar 2014 - 21:12 #7
Kolonnerne fra A til og med H (8 kolonner) skal kopieres. De kopieres hentil kolonne I (og fylder derfor hen til kolonne P) Til kolonne I til P vil jeg have samme kode. Men skal jeg kopiere den samme kode, og så "manuelt" ændre bogstaverne? eller kan jeg gøre det på en smartere måde? Jeg skal nemlig kopiere mange gange
Avatar billede store-morten Ekspert
19. februar 2014 - 21:50 #8
Så der skal skjules hvis der tastes i J2?
Avatar billede store-morten Ekspert
19. februar 2014 - 21:55 #9
Prøv at teste denne:
Private Sub Worksheet_Change(ByVal Target As Range)
'Ved ændring i B2 og J2 flere kan tilføjes.
If Not Intersect(Range("B2", "J2"), Target) Is Nothing Then
        'Vis alle kolonner
        Cells.EntireColumn.Hidden = False
'Skjul kolonner ud fra ændret celle
Select Case Target.Value
    Case Is = "Køb"
        Columns(Target.Column + 3).EntireColumn.Hidden = True
        Columns(Target.Column + 4).EntireColumn.Hidden = True
        Columns(Target.Column + 5).EntireColumn.Hidden = True
        Columns(Target.Column + 6).EntireColumn.Hidden = True
    Case Is = "Leje"
        Columns(Target.Column + 1).EntireColumn.Hidden = True
        Columns(Target.Column + 2).EntireColumn.Hidden = True
        Columns(Target.Column + 5).EntireColumn.Hidden = True
        Columns(Target.Column + 6).EntireColumn.Hidden = True
    Case Is = "Lease"
        Columns(Target.Column + 1).EntireColumn.Hidden = True
        Columns(Target.Column + 2).EntireColumn.Hidden = True
        Columns(Target.Column + 3).EntireColumn.Hidden = True
        Columns(Target.Column + 4).EntireColumn.Hidden = True
End Select

End If
End Sub
Avatar billede store-morten Ekspert
20. februar 2014 - 10:19 #10
Til rette "Vis" funktion.
Private Sub Worksheet_Change(ByVal Target As Range)
'Ved ændring i B2 og J2 flere kan tilføjes.
If Not Intersect(Range("B2", "J2"), Target) Is Nothing Then
        'Vis 6 kolonner til højre for Target
        Columns(Target.Column + 1).EntireColumn.Hidden = False
        Columns(Target.Column + 2).EntireColumn.Hidden = False
        Columns(Target.Column + 3).EntireColumn.Hidden = False
        Columns(Target.Column + 4).EntireColumn.Hidden = False
        Columns(Target.Column + 5).EntireColumn.Hidden = False
        Columns(Target.Column + 6).EntireColumn.Hidden = False
'Skjul kolonner ud fra ændret celle
Select Case Target.Value
    Case Is = "Køb"
        Columns(Target.Column + 3).EntireColumn.Hidden = True
        Columns(Target.Column + 4).EntireColumn.Hidden = True
        Columns(Target.Column + 5).EntireColumn.Hidden = True
        Columns(Target.Column + 6).EntireColumn.Hidden = True
    Case Is = "Leje"
        Columns(Target.Column + 1).EntireColumn.Hidden = True
        Columns(Target.Column + 2).EntireColumn.Hidden = True
        Columns(Target.Column + 5).EntireColumn.Hidden = True
        Columns(Target.Column + 6).EntireColumn.Hidden = True
    Case Is = "Lease"
        Columns(Target.Column + 1).EntireColumn.Hidden = True
        Columns(Target.Column + 2).EntireColumn.Hidden = True
        Columns(Target.Column + 3).EntireColumn.Hidden = True
        Columns(Target.Column + 4).EntireColumn.Hidden = True
End Select

End If
End Sub
Avatar billede Alexander19 Nybegynder
20. februar 2014 - 17:17 #11
Jeg takker
Avatar billede Alexander19 Nybegynder
20. februar 2014 - 17:18 #12
..
Avatar billede store-morten Ekspert
20. februar 2014 - 18:41 #13
Vebekomme
Avatar billede store-morten Ekspert
20. februar 2014 - 20:04 #14
Velkommen på Eksperten.dk

Som spørger, skal du bruge:
Kommentar (til forslag)

Og når du har fået et 'Svar' på dit spørgsmål, du kan bruge,
beder du den der har hjulpet dig, om at lægge et:
Svar (til løsninger og pointgivning)

Her er en lille film om:
Hvordan man accepterer svar på Eksperten.dk
http://www.youtube.com/watch?v=s26DGiuvXBo
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