• 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.

met VBA bepalen welk excelbestand actief is

Status
Niet open voor verdere reacties.

ericabt

Gebruiker
Lid geworden
9 nov 2008
Berichten
104
Stel je hebt 4 excelbestanden open staan, excelbestanden 1 t/m 4. Excelbestanden 2 t/m 4 zijn willekeurige bestanden met een vooraf onbekende naam. Excel 1 moet een macro uitvoeren (inhoud van de macro niet relevant) op het moment dat de gebruiker switcht van excel 1 naar 2 of 3 of 4.

Is het dus op de een of andere manier mogelijk dat een macro in excelbestand 1 kan aftasten of deze actief is of dat een van de andere bestanden actief is.

Het is een beetje cryptisch, maar hopelijk begrijpen jullie wat ik bedoel. Een voorbeeld toevoegen is wat lastig.
 
Het bestand waar de macro in staat is 'Thisworkbook'.
Eén van de andere kan een 'Activeworkbook' zijn.
 
bedankt voor je reactie, maar het is niet helemaal waar ik naar op zoek ben.

Laat ik het proberen concreter te maken.
In bestand "1" (zoals hierboven omschreven) moet in cel A1 "uit" komen te staan op het moment dat ik switch naar bestand "2, 3 of 4, etc" Als ik weer terugswitch naar bestand "1" wordt dit "aan". De VBA code mag alleen in het excelbestand "1" worden opgenomen.
 
Wat denk je als je wilt kijken wat in cel A1 staat van bestand 1 ?

Natuurlijk komt in cel A1 "uit" te staan als je switched naar een ander bestand, maar jij ziet het niet.
Als je gaat kijken is bestand 1 weer actief en staat er weer "aan".
 
Eindelijk gevonden.

windowdeactivate/windowactivate commando. Ik wilde namelijk dat de ribbon, formulabar, headings etc verdwijnen bij alleen bestand 1. Als bestand 2, 3 en 4 actief worden dan moeten deze in de default excelweergave verschijnen. Dit had ik gemakshalve even aan/uit genoemd.

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