• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Lint verbergen/verschijnen bij meerdere excelbestanden

Status
Niet open voor verdere reacties.

ericabt

Gebruiker
Lid geworden
9 nov 2008
Berichten
104
hallo,

Het lint laten verschijnen en verbergen met een VBA-code is reeds vaker aan bod geweest, maar heb er niet het antwoord op mijn vraag gevonden.
Met onderstaande code verberg ik het lint en wat andere zaken.

Code:
[I]        Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"
        'Application.DisplayFullScreen = True (INACTIEF)
        Application.DisplayFormulaBar = False
        ActiveWindow.DisplayGridlines = False
        ActiveWindow.DisplayHeadings = False
        Application.DisplayStatusBar = False[/I]

De bedoeling is dit bij afsluiten van de betreffende spreadsheet weer terug te zetten. Daar kom ik wel uit.
Echter als ik tussentijds een ander excel bestand open, start deze niet helemaal in de defaultsituatie op. Hij neemt een aantal instellingen over van de spreadsheet met het betreffende macro. Is dit op de een of andere manier te voorkomen, zodat de code alleen werkt voor deze specifieke spreadsheet.

groet Eric
 
Laatst bewerkt door een moderator:
Beste ericabt ;)

Het is misschien best aan te raden om een code te plaatsen in je persoonlijke werkmap van VBA.
Deze map wordt geactiveerd voor alle werkmappen.
Codes die in This WorkBook staan zijn enkel geldig voor het openstaand werkmap.

Groetjes Danny. :thumb:
 
Danny,

bedankt voor de reactie, maar dit is niet helemaal waar ik naar op zoek ben, tenzij ik het niet helemaal begrijp.

Op het moment dat het excelbestand met deze macro is geopend, dan zal deze alle "application." commando's ook toepassen op excelbestanden die ik hierna open, tot het moment dat ik het betreffende excelbestand weer afsluit. Ik wil dat andere excelbestanden die bij gelijktijdig gebruik geopend zijn, zich niets aantrekken van deze macro.
 
Ik weet niet hoe je de andere bestanden dan opent maar je zal dan eerst excel opnieuw moeten openen en dan de andere bestanden openen.
 
Door te dubbelklilkken op een ander excelbestand wordt een nieuw window geopend, althans bij mij ;-)
 
Danny,

bedankt voor de reactie, maar dit is niet helemaal waar ik naar op zoek ben, tenzij ik het niet helemaal begrijp.

Op het moment dat het excelbestand met deze macro is geopend, dan zal deze alle "application." commando's ook toepassen op excelbestanden die ik hierna open, tot het moment dat ik het betreffende excelbestand weer afsluit. Ik wil dat andere excelbestanden die bij gelijktijdig gebruik geopend zijn, zich niets aantrekken van deze macro.

Wat is de code om alles terug recht te zetten als je het betreffende excelbestand afsluit.
Plaats deze code in je persoonlijke werkmap.
Deze kan je aanmaken door een macro te schrijven en door op te slaan in "Persoonlijke macrowerkmap".

Groetjes Danny. :thumb:
 
In de persoonlijke map plaatsen is denk ik niet mogelijk. Dit bestand kan straks door diverse gebruikers gebruikt worden en die hebben natuurlijk allemaal hun eigen persoonlijke map. Dit voorstellen bij onze automatisering gaat hem niet worden. Dus als ik het niet gewoon binnen de VBA van het exceldocument kan houden, dan houdt het op.
Ik heb een bijlage bijgevoegd, waar door middel van een knop het lint (en wat andere zaken) worden verborgen.
Als de knop aanstaat en er wordt een ander willekeurig excelbestand geopend, dan neemt deze enkele zaken over. Kan ik dat voorkomen, maar niet door deze in een persoonlijke map op te slaan.

Bekijk bijlage schermweergave.xlsm
 
gelukt,

wil mijn antwoord in ieder geval nog even delen.

Private Sub workbook_open()
Application.ScreenUpdating = False
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"
Application.DisplayFormulaBar = False
ActiveWindow.DisplayGridlines = False
ActiveWindow.DisplayHeadings = False
Application.ScreenUpdating = True
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Excel.Window)
Application.ScreenUpdating = False
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"
Application.DisplayFormulaBar = False
ActiveWindow.DisplayGridlines = False
ActiveWindow.DisplayHeadings = False
Application.ScreenUpdating = True
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Excel.Window)
Application.ScreenUpdating = False
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",true)"
Application.DisplayFormulaBar = True
ActiveWindow.DisplayGridlines = True
ActiveWindow.DisplayHeadings = True
Application.ScreenUpdating = True
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan