Avatar billede cjeskovby Nybegynder
11. maj 2009 - 11:49 Der er 7 kommentarer og
1 løsning

Automatisk "skjul" af ikke brugte faner.

Jeg har et behov for i mit excel regneark at skjule en del faner for brugerne af regne arket og det skulle gerne være uafhængig af fane navnet.

Kan man programmere sig ud af at man søger på de faner der er i dokumentet og skjuller alle på nær de samme 3 hele tiden.?
Avatar billede mrgumble Nybegynder
11. maj 2009 - 12:25 #1
Jeg har aldrig oplevet, at man kan skjule faner i Excels regneark. Men en alternativ løsning kunne være, at du beskyttede fanerne mod ændringer?
Avatar billede cjeskovby Nybegynder
11. maj 2009 - 12:40 #2
Hvis du højre klikker på en fane, så er der et menu punkt som hedder skjul. Derved fjerne du den fane visuelt.
Du kan så vælge VIS igen for at se fanen igen.
Avatar billede tjacob Juniormester
11. maj 2009 - 12:57 #3
Blot til inspiration -dette vil skjule alle ark på nær nr.2:


    Dim i, NumSheets As Integer
    NumSheets = ThisWorkbook.Sheets.Count
    For i = 1 To NumSheets
        If Not i = 2 Then
            Sheets(i).Select
            ActiveWindow.SelectedSheets.Visible = False
        End If
    Next i
Avatar billede cjeskovby Nybegynder
11. maj 2009 - 14:09 #4
Hej tjacob

Det virker. tak.
Bøvlede lidt med hvis fanen allerede ikke er synlig, så fejlede Sheets(i).select, men det tror jeg at jeg har løst vi at gøre alle synlig inden jeg køre din rutine.

Send mig et svar.
Avatar billede tjacob Juniormester
11. maj 2009 - 15:03 #5
OK, -svar
Avatar billede tjacob Juniormester
11. maj 2009 - 15:07 #6
Du kan teste i loopet om et ark er synligt i forvejen:

    Dim i, NumSheets As Integer
    NumSheets = ThisWorkbook.Sheets.Count
    For i = 1 To NumSheets
        If Not i = 2 Then
            If Sheets(i).Visible = True Then
                Sheets(i).Select
                ActiveWindow.SelectedSheets.Visible = False
            End If
        End If
    Next i
Avatar billede tjacob Juniormester
11. maj 2009 - 15:09 #7
Faktisk behøver man slet ikke Selecte:

    Dim i, NumSheets As Integer
    NumSheets = ThisWorkbook.Sheets.Count
    For i = 1 To NumSheets
        If Not i = 2 Then
            If Sheets(i).Visible = True Then Sheets(i).Visible = False
        End If
    Next i
Avatar billede cjeskovby Nybegynder
11. maj 2009 - 15:12 #8
tak for det. Er simplere end det jeg lavede. :-)
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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