Just nu i M3-nätverket
Gå till innehåll

vill dölja flikar utifrån villkor i Excel


Shape_sthlm

Rekommendera Poster

jag vill kunna dölja/visa flika utifrån ett villkor.

 

om användare 1 öppnar dokumentet så ska alla flikar visas, men om användare 2 öppnar dokumentet så ska endast 2 flikar visas.

 

hur kan jag styra det med kod?

 

tack på förhand

 

/Micke

 

 

Länk till kommentar
Dela på andra webbplatser

Användare på vilket sätt? Ska de skriva in ett lösenord eller?

 

I vilket fall som helst:

1: Du måste gömma de blad du inte vill att alla ska se INNAN boken sparas.

Dvs använda

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

 

 

2: När boken öppnas tar du fram bladen, då via funktionen

Private Sub Workbook_Open()

eller via en knapp kanske är bättre.

 

Gömma/ta fram ett blad

Sheets("Bladet").Visible = xlSheetHidden/xlSheetVeryHidden/xlSheetVisible

där xlSheetVeryHidden är säkrast då enda sättet att ta fram den är via VBA-editorn eller via kod.

 

Det är grunden...

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Principiellt så är det ju inga konstigheter att stänga/öppna ett blad. Jag vills dock helst komma på nåt sätt så att jag kan hantera alla flikar utom vissa.

 

T.ex om flik 1 alltid ska vara synlig för alla, men 2-78 enbart för vissa. Kan man gömma flik 2-78 utan att behöva skriva 76 rader kod?

Finns det kod för att "visa alla" blad?

 

 

 

Länk till kommentar
Dela på andra webbplatser

Tja, enklast är nog att med en For Each sats stega igenom alla blad och i denna kontrollera om det är ett blad som ska visas eller ej

 

Dim ws as Worksheet
For Each ws in Thisworbook.Worksheets
  Select Case ws.Name
        Case "Blad1"
                ws.Visible = xlSheetVisible
        Case Else
                ws.Visible = xlSheetVeryHidden
  End Select
Next ws

har du någon form av generiska namn kan du nyttja dessa eller om du har bladen sorterade i viss ordning kan du gå igenom dem med en vanlig For-sats.

 

Du måste stega igenom alla blad, det går inte att gömma flera med ett kommando.

 

Läs mer som Select Case i VBA-hjälpen.

 

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

det här blir faktiskt bra. logiskt oxå!

 

man skulle ju en gång i tiden ha tänkt på att haft ngn form av generiska namn, nu i efterhand är det svårt att strukturera om när allt hänger ihop.

 

tack för hjälpen

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...