Aanpassen van het Lint in Excel 2007

Door Ron de Bruin, MVP

In Excel 2007 zijn de Werkbladmenubalk en de Werkbalken vervangen door het Lint en de Werkbalk Snelle Toegang. Alle bestanden die met VBA-code een aanpassing maakten in de Werkbladmenubalk of een werkbalk kunnen de oude menustructuur niet vinden in Excel 2007 en je zal daarom alle veranderingen vinden op het tabblad “Invoegtoepassingen“. Let op: Dit tablad is dan alleen zichtbaar.
Omdat dit niet zo’n fraai gezicht is gaan we in dit artikel uitleggen hoe we met behulp van XML een mooi menu op het Lint kunnen maken.

Let op: In dit artikel gebruik ik Excel als voorbeeld maar op een kleine aanpassing na is het ook te gebruiken voor alle andere Office-toepassingen.

Laten we beginnen!

De twee belangrijkste bestandsindelingen in Excel 2007 zijn

1: xlsx (kan geen macrocode opslaan)

2: xlsm (kan wel macrocode opslaan)

We openen een nieuw bestand in Excel 2007 en slaan het bestand op als test.xlsm (met macro’s) en sluiten dit Excel bestand gelijk weer. We gebruiken dit bestand om de voorbeelden te testen.

Een Excel 2007 bestand is eigenlijk gewoon een zip-bestand. Om dat te laten zien gaan we de extensie xlsm veranderen in zip en openen we het zip-bestand. Er zijn ook Zip-programma’s die een Excel 2007-bestand kunnen openen als Zip zonder de extensie te veranderen.

Als je geen extensie achter je bestandsnamen ziet kan je dit in de Map opties veranderen.

  • Windows XP: Open een map en klik op Extra, Mapopties

  • Windows Vista: Open een map en klik op Organiseren, Map- en zoekopties

Vervolgens voor beide Windows-versies: vink op de tab Weergave de optie “Extensies voor bekende bestandstypen verbergen” uit.

.

Dit is een schermafbeelding van de standaard in Windows Vista ingebouwde zip-funtie.

Als we een tab, groep of knop in het Lint willen maken dan moeten we in dit zip-bestand een nieuwe map gaan maken met een nieuw bestand met de XML om het Lint te veranderen en nog een aantal kleine aanpassingen.

Kortom: dit is veel te ingewikkeld om handmatig te doen dus we gaan een programma installeren en een aantal voorbeeld XML-bestanden die het ons een stuk makkelijker gaan maken.

Maar eerst sluiten we het zip-bestand en veranderen de extensie weer naar xlsm.

De Custom UI Editor Tool

We downloaden de Custom UI Editor Tool van http://openxmldeveloper.org/articles/customuieditor.aspx. Pak het gedownloade bestand uit met een zip-programma en open of dubbelklik het OfficeCustomUIEditorSetup.msi bestand om het programma te installeren.

Belangrijk voor Windows XP gebruikers : Voordat je de Custom UI Editor gaat installeren: voer Windows Update uit, en onder Optionele Updates kies het .NET Framework 2 of 3. Na het installeren voer je Windows Update nog een keer uit om te ziet of er belangrijke updates voor het .NET Framework zijn.

Als we de Custom UI Editor openen zien we 5 menu knoppen:

.

Open : Open het Excel bestand waarvan je het Lint van wil veranderen.

Save : Opslaan van de XML in het bestand dat open is in de UI editor (opslaan is niet mogelijk als het bestand open is in Excel).

Insert Icons : Invoegen van de pictogrammen die je wilt gebruiken voor de knoppen in het bestand (de pictogrammen worden opgeslagen in het bestand). Niet alle indelingen worden ondersteund, jpeg bijvoorbeeld niet.

Validate : Controleer de XML op fouten.

Generate Callbacks : Maakt alle macro’s(callbacks) voor elke onAction in je xml.Selecteer alle callbacks en kopieer ze in een standaard module in je bestand. Daarna kan je de code invoegen tussen de Sub en de End Sub regel in elke callback.

Voorbeelden

Download dit zip-bestand met XML-bestanden die we in de de Custom UI Editor gaan gebruiken.

Sluit de de Custom UI Editor als het programma open is en unzip de bestanden in deze map:
C:\Program Files\CustomUIEditor\Samples

Als je een 64-bit machine hebt in deze map:
C:\Program Files (x86)\CustomUIEditor\Samples

De voorbeeld XML-bestanden

We openen de customUI editor en openen het bestand test.xlsm. Let op: Het Excel-bestand mag niet open zijn in Excel als je de XML wil opslaan in het Excel bestand.

In het Sample-menu kiezen we het voorbeeld ”XL-Aangepast tabblad 1”. Als we nu op de knop Opslaan drukken dan zal een nieuwe map met een bestand met de XML toegevoegd worden in het Excel-bestand.

Als je dat zelf wil controleren verander dan de extensie van test.xlsm in .zip en je ziet als je de zip opent dat er een map met de naam customUI is bijgekomen met daarineen bestand genaamd customUI.xml. Sluit het zip-bestand en verander de extensie weer terug in .xlsm voor dat je verder gaat.

We openen nu het test.xlsm bestand in Excel en zien dat er een nieuw tabblad (MijnTabblad) in het lint is bijgekomen met een aantal knoppen en een menu.
Op deze manier kan je alle voorbeelden die met XL beginnen in het Sample-menu proberen. Lees de groene regels in de XML zodat je weet wat je kunt verwachten als je de XML opslaat in het bestand.

Uitvoeren van een macro als je op een knop of menu-optie drukt

Als je de XML bekijkt zie je voor elke knop of optie in het menu een onAction: onAction="Macro4"

Het formaat is simpel: onAction = “De naam van de macro die je wilt uitvoeren als je op de knop of menu optie klikt”

In voorgaande Excel versies gebruik je:

Sub Macro4()
...
End Sub

Maar in Excel 2007 gebruik je dit:

Sub Macro4(control As IRibbonControl)
...
End Sub

Tip: Gebruik de Generate Callbacks knop in de Custom UI editor. Selecteer alle callbacks en kopieer ze in een standaard module in je bestand. Daarna kan je de code invoegen tussen de Sub en de End Sub regel in elke callback. Gebruik een simpele MsgBox in elke callback om de knoppen en menu opties te testen.

Sub Macro4(control As IRibbonControl)
MsgBox "Macro4"
End Sub

Waar vind ik de namen van de idMso’s en imageMso’s ?

In de voorbeelden zie je dat we idMso gebruiken voor de naam van een ingebouwd tabblad, groep of knop, en we gebruiken imageMso om een ingebouwd Office-pictogram te gebruiken voor een knop.

Op deze pagina kan je een aantal bestanden downloaden die heel erg nuttig zijn bij het zoeken van de juiste idMso of imageMso, zie met name nummers 3 en 4. Een Excel-werkboek met alle Office-pictogrammen vind je hier.

Conclusie

Het Lint is een hele verandering in Excel 2007 en het zal voor elke ontwikkelaar tijd kosten om het allemaal onder de knie te krijgen. In dit artikel hebben we een eerste stap gemaakt en dit zal de basis zijn voor het aanpassen van het Lint voor Office toepassingen.

Meer Informatie

Op deze pagina staan een aantal links in het “More Information” gedeelte die ik regelmatig update.

Tip voor een menu voor macro’s die je wilt gebruiken in al je open bestanden.

Uw vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Office Insiders

Was deze informatie nuttig?

Bedankt voor uw feedback.

Hartelijk dank voor uw feedback! Het lijkt ons een goed idee om u in contact te brengen met een van onze Office-ondersteuningsagents.

×