Just nu i M3-nätverket
Jump to content

vill dölja flikar utifrån villkor i Excel


Shape_sthlm

Recommended Posts

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

 

 

Link to comment
Share on other sites

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.

 

Link to comment
Share on other sites

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?

 

 

 

Link to comment
Share on other sites

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.

 

Link to comment
Share on other sites

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

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...