Weergaveopties in Lint mbv VBA

Status
Niet open voor verdere reacties.

Visara

Gebruiker
Lid geworden
10 mrt 2019
Berichten
217
Goede avond,
Kan iemand mij helpen aan een vba code die voor mij in 'Weergaveopties voor lint' op dit knopje 'drukt'? (zie afbeelding van menu in excel)
Plaatje Lint aanpassen.png
('Macrop opnemen' lukt niet met het drukken op deze knop)
Dit kan ook gedaan worden door op Control+F1 te drukken, dus dat zou ik als volgt in ThisWorkbook kunnen zetten:
Code:
Private Sub Workbook_Open()
    Application.SendKeys "^{F1}"
End Sub
Echter, met Control+F1 switch je tussen 'Tabbladen weergeven' & 'Tabbladen en opdrachten weergeven'.
Als het bestand tussendoor wordt opgeslagen en later geopend moet deze code juist niet worden uitgevoerd.
Oplossing zou zijn om deze code dan ook in Private Sub Workbook_Close() te zetten.
Maar, als de computer tussendoor vastloopt of iemand opent het bestand een tweede keer op dezelfde computer... gaat het alsnog mis.

Dus wat zoek ik?
Een code die voor mij bij het openen van het bestand op het 'knopje' drukt zoals op de afbeelding.
Óf een code die checkt 'of er al op het knopje is gedrukt' qua menu instellingen en indien 'nee' Control+F1 doet.

Andere mogelijkheid is iets met
Code:
Application.DisplayFullScreen
maar die doet iets meer dan ik wil.
Ik wil namelijk wel dat de tabs aan de bovenkant zichtbaar blijven (de tabs waar Bastand, Invoegen, Pagina-indeling etc op staan)

Met vriendelijke groet
 
Laatst bewerkt:
Probeer deze:
Code:
Private Sub Workbook_Open()
    ActiveWindow.DisplayWorkbookTabs = True
End Sub
 
Dat werkt niet, DisplayWorkbookTabs gaat over de tabs aan de onderkant in het scherm.

Ik wil graag de tabs aan de bóvenkant in het scherm zichtbaar houden, de tabs met o.a. 'Bestand', 'Invoegen', 'Ontwikkelaars' etc.
Voorbeeld.jpg
 
Laatst bewerkt:
Dan had ik je dus verkeerd begrepen.
Kijk eens naar dit voor verbergen en weergeven:
Code:
Sub RemoveToolbars()
    On Local Error Resume Next
    With Application
       .DisplayFullScreen = True
       .CommandBars("Full Screen").Visible = False
       .CommandBars("MyToolbar").Enabled = True
       .CommandBars("MyToolbar").Visible = True
       .CommandBars("Worksheet Menu Bar").Enabled = False
    End With
    On Error GoTo 0
End Sub

Sub RestoreToolbars()
    On Local Error Resume Next
    With Application
       .DisplayFullScreen = False
       .CommandBars("MyToolbar").Enabled = False
       .CommandBars("Worksheet Menu Bar").Enabled = True
    End With
    On Error GoTo 0
End Sub
 
Hoi Ed,

Bedankt voor je poging te helpen.
Helaas maakt de code die jij gaf de tab-bladen van de excelmenu's niet zien :(
 
Vreemd.
Dat werkt hier prima.
Je moet natuurlijk ook in eerste instantie die manier van verbergen gebruiken.
 
Laatst bewerkt:
Ik heb je reactie over het hoofd gezien, sorry voor late reactie van mijn kant.
Jouw code geeft dit resultaat:
Screenshot resultaat.jpg

Dit is het gewenste resultaat. Merk op dat de menu-knoppen zoals 'Bestand'& 'Gegevens' etc in het groene gedeelte te zien zijn, maar dat de menu's niet zijn uitgeklapt.
Screenshot gewenst resultaat.jpg

Mvg
 
Hier het bestand waar ik jouw cods heb ingevoerd en die de screenshots als resultaat geven.
 

Bijlagen

  • Test2.xlsm
    16,6 KB · Weergaven: 85
Dit is een toggle voor wat je vraagt:
Code:
CommandBars.ExecuteMso "MinimizeRibbon"

Als:
Code:
CommandBars("Ribbon").Height

groter dan 100 terug geeft is het lint gemaximaliseerd.
 
Laatst bewerkt:
Dank! Dat werkt.

Voor mensen die net als ik dit soort fora afzoeken naar de code die ze nodig hebben, dit is de complete code.

Plaats in ThisWorkbook:

Code:
Private Sub Workbook_Open()
    If Application.CommandBars("Ribbon").Height > 100 Then
      Application.CommandBars.ExecuteMso "MinimizeRibbon"
      End If
End Sub

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    If Application.CommandBars("Ribbon").Height <= 100 Then
      Application.CommandBars.ExecuteMso "MinimizeRibbon"
      End If
End Sub
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan