ExsionSQL help¶
ExSION voor SQL¶
Haal gemakkelijk gegevens uit een MSSQL database met ExSIONSQL.
Een product van:
Exsion365 B.V.
Boerhaavelaan 40
2713 HX Zoetermeer
Voor meer informatie kunt u terecht op https://exsion365.com
Inleiding¶
ExSION voor SQL, verkort ExSIONSQL is een Excel invoegtoepassing die speciaal gemaakt is voor het snel en eenvoudig presenteren van gegevens uit een MSSQL database. Het combineert de functionaliteit en presentatiekracht van Excel met een real-time koppeling naar de database. Zo kunt u op elk gewenst moment binnen een paar seconden korte A4-rapportages opvragen voor verschillende administraties over verschillende perioden.
Met ExSIONSQL bent u niet meer afhankelijk van de statische rapportagevorm van SQL, maar kunt u zelf bepalen hoe een rapportage wordt ingedeeld en in welke presentatievorm. Door gebruik te maken van kleuren en grafieken kan de presentatiewaarde aanzienlijk verhoogd worden.
Stel, er zijn al Excel overzichten in bepaalde vorm aangemaakt. Hierin worden elke periode opnieuw gegevens ingevoerd of gekopieerd vanuit SQL. Het is nu mogelijk om deze gegevens op eenvoudige wijze om te zetten naar ExSIONSQL overzichten. Dit gebeurt door alle velden die normaliter worden ingetikt te vervangen door ExSIONSQL functies die de gegevens voor u uit de database halen.
ExSIONSQL heeft drie methodes om gegevens vanuit de database op te halen:
- Door middel van een dynamische download
- Via voor gedefinieerde functies functies vanuit de functie bibliotheek
- Of door zelf gedefinieerde functies
Deze methodes worden in de volgende hoofdstukken beschreven.
Activeren¶

De eerste keer dat ExSIONSQL gebruikt wordt moet deze worden geactiveerd.
Klik op “Activeren” in het ExSIONSQL menu om het licentie scherm te openen.

Klik op de knop “ACTIVEREN” om de activatie daadwerkelijk uit te voeren. Tijdens het activeren wordt een verbinding gemaakt via internet om de licentiegegevens te controleren en dit exemplaar van ExSIONSQL te registreren.
Menu functies¶
ExSIONSQL kunt u herkennen aan de ExSIONSQL tab in het lint. Door te klikken op de tab ExSIONSQL krijgt u onderstaand menu te zien.

De werking van de menuopties uit het ExSIONSQL menu worden hierna beschreven.
- Connectie
- Databasestructuur
- Functie bibliotheek
- Functie definitie
- Formules naar waarden
- Details weergeven
- Dynamische download
- Gegevens vernieuwen
- Help
- Info
Connectie¶
Om gegevens op te halen uit een MSSQL database moet er eerst een connectie worden aangemaakt. De eerste keer dat ExSIONSQL wordt gebruikt, zullen er nog geen connecties zijn aangemaakt en kunt u alleen kiezen voor de optie “Nieuwe connectie”.

Na een keuze vanuit dit submenu wordt het volgende scherm getoond:

Door op de knop “OPSLAAN” te drukken wordt de connectie opgeslagen de knop “VERWIJDEREN” verwijderd een eerder opgeslagen connectie.
| Veld | Beschrijving |
|---|---|
| ID | Het ID van de databaseconnectie is een getal tussen 1 en 999 en is in alle ExSIONSQL functies het eerste argument. Wilt u gegevens ophalen uit de connectie die u creëert, dan dient u het nummer te gebruiken uit het ID veld. Standaard wordt het ID bij elke nieuwe connectie met één verhoogd. |
| Authenticatie | SQL Server Authentication
Windows Authentication Active Directory - Integrated Active Directory - Password Active Directory - Universal with MFA support OAuth 2.0 (v2) |
| Gebruikers-ID | Gebruikers-ID die toegang heeft tot de MSSQL database. |
| Wachtwoord | Wachtwoord dat hoort bij de Gebruikers-ID. |
| Server | MSSQL Server naam (of IP-adres) waarop de MSSQL database is geïnstalleerd.![]() |
| Database | De naam van de MSSQL database.![]() |
Databasestructuur¶

Hiermee brengt u de complete databasestructuur in kaart, inclusief het maatwerk. Het werkt als een soort stratenboek van uw SQL applicatie. U kunt op deze manier inzicht krijgen in het datamodel van uw SQL omgeving.
Na het activeren van de menu optie wordt het volgende scherm getoond:

Na op de knop “OK” gedrukt te hebben, wordt de databasestructuur getoond voor de gekozen connectie.

Door op een tabelnaam te klikken springt u naar het tabblad met de detailinformatie van de tabel.

Functie bibliotheek¶

U kunt een bibliotheek van functies aanleggen, die ongeacht in welk Excel bestand u werkt altijd aanwezig zullen zijn. Een voordeel van deze manier van functie aanmaken is dat u help kunt toevoegen aan de functie en de functieargumenten.
Een nadeel is dat de Excel bestanden niet standaard tussen gebruikers zijn uit te wisselen. Andere gebruikers moeten de gedefinieerde functie(s) ook in hun bibliotheek opnemen. Bij de installatie van ExSIONSQL kan worden gekozen om de functie bibliotheek op een centrale plaats neer te zetten, zodat alle gebruikers de beschikking hebben tot deze functies.
Na het opstarten van deze functie krijgt u een overzicht met functies uit de bibliotheek. Wanneer er geen functies zijn gedefinieerd is deze lijst leeg.

U kunt kiezen voor “Nieuw” om een nieuwe functie aan te maken of “Bewerken” om een bestaande functie te wijzigen.
In dit voorbeeld wijzigen we de functie KLANTOMZET:

| Veld | Beschrijving |
|---|---|
| Tabel | De tabel waaruit de functie zijn gegevens haalt.![]() |
| Veld | Het veld dat moet worden opgehaald via deze functie.![]() |
| Methode | Keuze van de berekening op het veld (SOM, MIN, MAX, GEM of ANT). |
| Index | De index die moet worden gebruikt. De velden binnen de index worden als argumenten aan de functie toegevoegd (zie stap 2). |
| Naam | Naam van de functie die wordt gedefinieerd. |
| Omschrijving | Een korte omschrijving van de functie (deze omschrijving wordt in de functie wizard van Excel getoond). |
| Weergave | Keuze om de beschrijving van tabellen/velden te tonen of de namen uit de database.![]() |
| Connectie-ID | De connectie ID waarvan de tabellen en velden worden getoond. |
Na de knop “>>” worden de functie argumenten getoond (gekozen index):

| Veld | Beschrijving |
|---|---|
| Naam | Standaard wordt de veld beschrijving van de tabel gebruikt, maar kan hier gewijzigd worden om het gebruikersgemak te verhogen. |
| Omschrijving | Een korte omschrijving van het argument (deze omschrijving wordt in de functie wizard van Excel getoond). |
| Filter (vast) | Er kan een vast filter worden ingegeven, het argument wordt daarna niet meer getoond in de functie wizard van Excel. |
| Verbergen | Geeft aan of het argument verborgen moet zijn in de functie wizard van Excel. |
Na het drukken op de knop “OK” is de functie toegevoegd aan de bibliotheek.
De aangemaakte functie is terug te vinden in de functie wizard van Excel onder de categorie “ExSIONSQL Bibliotheek”:

Voorbeeld van de zojuist aangemaakte functie:

Functie definitie¶

Database functies gebruiken als 2de argument (Definitie) een bereik waarin de tabel en indexvelden zijn opgenomen en als 3de argument (Veld) een bereik van een veldnaam waarvan de waarde moet worden opgehaald. Via deze menu optie kunnen beide bereiken makkelijk worden gedefinieerd.
Definitie¶
Om het bereik waarin de tabel en indexvelden zijn opgenomen moet u kiezen voor de optie “Definitie”.

Het volgende scherm wordt getoond na het activeren van deze menu optie.

Er is gekozen voor de tabel “Klantposten” met de Index “Klantnr.,Boekingsdatum,Valutacode,Volgnummer”.
Na het drukken op de “OK” knop vraagt ExSIONSQL om een naam aan de functie definitie te geven.

En wordt de tabel met de geselecteerde index gekopieerd naar de actieve cel in Excel. In het volgende scherm is dit A1 t/m B5.

De volgende stap is om een veld bereik aan te maken, dit kunt u doen door de menu optie “Veld”.
Veld¶
Om een bereik aan te maken waarin de veldnaam is opgenomen moet u kiezen voor de optie “Veld”:

In het volgende scherm kan worden gezocht naar een veld binnen een tabel.

Na op de knop “OK” te hebben gedrukt, wordt het veld met de beschrijving naar de actieve cel gekopieerd:

De gedefinieerde bereiken kunnen in de functie ExSIONSQL_DBSOM worden gebruikt.

Zie het hoofdstuk Database functies, voor een lijst met functies die gebruik maken van de functie definitie.
Formules naar waarden¶

Via deze menu optie kunt u alle ExSIONSQL formules in uw rapport vervangen door waarden. De menu optie is bedoeld om ExSIONSQL rapporten uit te kunnen wisselen met andere Excel gebruikers die ExSIONSQL niet hebben geïnstalleerd.
Let op: wanneer deze optie is uitgevoerd, zullen de ExSIONSQL formules in het Excel bestand zijn gewist.
Om te voorkomen dat u de formules verliest kunt u het beste eerst het Excel bestand onder een andere naam opslaan (een kopie maken).
Zonder ExSIONSQL formules kunnen de gegevens niet meer vernieuwd vanuit de database.

Details weergeven¶

Deze menu optie geeft u inzicht in details achter een ExSIONSQL formule van de huidige cel. Nadat u op de knop “Details weergeven” heeft gedrukt, wordt er een nieuw werkmap aangemaakt.
Het eerste tabblad “DATA” geeft de details weer en het tweede tabblad “ExSIONSQL” de bron waarop de formule is gebaseerd in de vorm van een “Dynamische download” definitie.
De download definitie kan worden aangepast en worden bijgewerkt via de knop “Gegevens vernieuwen”.
Een voorbeeld van details weergeven:

De nieuwe werkmap met daarin de tabbladen “DATA” en “ExSIONSQL”:

Zoals u kunt zien zijn de functieargumenten van de functie overgenomen in de download definitie:

Dynamische download¶

Door middel van een dynamische download kunnen gegevens vanuit de database in Excel worden geplaatst. In tegenstelling van het gebruik van functies, kan in één keer een grote hoeveelheid gegevens worden opgehaald.
Wanneer de functie voor het eerst wordt opgeroepen wordt het volgende scherm getoond.

| Veld | Beschrijving | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Toevoegen | Geeft een lijst met tabellen vanuit de database. | ||||||||||||||||||||||||
| Zoeken | Zoekmogelijkheid binnen de daarboven genoemde lijst. | ||||||||||||||||||||||||
| Filter | Filter op type TABEL of VIEW. | ||||||||||||||||||||||||
| Weergave | Keuze om de beschrijving van tabellen/velden te tonen of de namen uit de database. | ||||||||||||||||||||||||
| Connectie-ID | De databaseconnectie waarop de download is gebaseerd. | ||||||||||||||||||||||||
| >> | Voegt alle velden binnen de tabel toe aan de download definitie. | ||||||||||||||||||||||||
| > | Voegt alleen het geselecteerde veld toe aan de download definitie (kan ook door dubbel te klikken op het veld). | ||||||||||||||||||||||||
| < | Verwijderd het veld binnen de geselecteerde velden (kan ook door dubbel te klikken op het veld). | ||||||||||||||||||||||||
| << | Verwijderd alle velden uit de download definitie. | ||||||||||||||||||||||||
| JOIN | Wanneer er meerdere tabellen zijn geselecteerd, moeten er relaties tussen tabellen worden opgegeven. Dit kan door in het linker tabblad op een veld te gaan staan en op het rechter tabblad het relatie veld te kiezen. | ||||||||||||||||||||||||
| OUTER | Wanneer er een relatie is gemaakt tussen twee tabellen, kan hier mee aangegeven worden of de gegevens vanuit de geselecteerde tabel moeten bestaan (INNER JOIN).
|
||||||||||||||||||||||||
| Velden | Een lijst met geselecteerde velden. | ||||||||||||||||||||||||
| Naam | Standaard wordt het veldnaam van de tabel gebruikt, maar kan hier worden aangepast. De aangepaste naam wordt in de tabel of draaitabel getoond. | ||||||||||||||||||||||||
| Methode | Keuze van de berekening op het veld, er zijn twee type berekeningen.
Type 1 groepeerde de zichtbare of join velden binnen de tabel waarop geen methode is toegepast.
Type 2 heeft alleen betrekking op velden van het type datum en is bedoeld om in een draaitabel het aantal records te verdichten.
|
||||||||||||||||||||||||
| Verbergen | Velden die niet in de download moeten worden getoond, kunnen hiermee worden verborgen. Dit kunnen velden zijn waarop gefilterd wordt en/of velden die relaties tussen tabellen aangeven. | ||||||||||||||||||||||||
| Tabel/Veld | De tabel- en veldnaam uit de database. Wanneer het veld is gekoppeld (een join), worden er meerdere tabellen/velden getoond. | ||||||||||||||||||||||||
| Openen | Een EDD (ExSIONSQL Download Definitie) bestand openen. | ||||||||||||||||||||||||
| Opslaan | Een EDD (ExSIONSQL Download Definitie) bestand opslaan. | ||||||||||||||||||||||||
| OK | Door op “OK” te klikken geeft u aan dat u de download definitie wilt afsluiten en in Excel wilt plaatsen. Het uitvoeren van de downloaddefinitie begint pas als u op de knop “Gegevens vernieuwen” klikt. |
Vervolg op boven staand scherm, nu met de opties vanuit het tabblad “Instellingen”.

| Veld | Beschrijving |
|---|---|
| Type | Keuze van download type: TABEL of DRAAITABEL. |
| TOP | Het maximaal aantal records dat uit de database moet worden opgehaald. |
| Sorteren op | Maximaal 3 velden waarop gesorteerd moet worden. |
| Aflopend | Of het veld aflopend moet worden gesorteerd. |
Om een tabel aan de definitie toe te voegen moet u dubbel klikken op de tabel (binnen de lijst met tabellen in het “Toevoegen” tabblad). De tabelnaam wordt als laatste regel toegevoegd waarna een lijst met niet geselecteerde veldnamen worden weergegeven.
In het volgende voorbeeld is de tabel “Klant” toegevoegd met de velden “Nr.” en “Naam” en de tabel “Klantposten” met de velden “Orderklantnr.” en “Verkoop (LV)” met de methode “SOM” aan de download definitie. Het veld “Nr.” is verborgen en voor beide tabellen moeten records aanwezig zijn (INNER JOIN).

Na het toevoegen van de 2de tabel “Klantposten” komt er een voorstel met de tabel relaties:

Hieronder is de download definitie te zien, na op “OK” te hebben gedrukt.

| Veld | Beschrijving |
|---|---|
| FILTER | Een filter definitie voor het veld (zie: “Gebruik van filters”). |
| EXPRESSIE | Hier kan een ExSIONSQL functie worden gebruikt om de download te versnellen. |
Na het definiëren van een nieuwe download en op de knop “Gegevens Vernieuwen” te hebben gedrukt, wordt de vraag gesteld waar de uitvoer van de download moet worden geplaatst (in het vorige voorbeeld was dit $A$7).

Na op “OK” te hebben gedrukt, worden de gegevens uit de database op de opgegeven locatie getoond.

Elke download definitie heeft een naam die begint met “ExSIONSQL_QUERY_” gevolgd door een nummer. De uitvoer van de download heeft ook een naam, deze naam begint met “ExSIONSQL_DATA_” gevolgd door het zelfde nummer als de download definitie.
Wanneer de download uitvoer is aangemaakt, kunnen er nog meer instellingen binnen Excel worden opgegeven door in het uitvoerbereik te gaan staan en op de rechtermuis knop te drukken en vervolgens te kiezen voor “Gegevensbereikeigenschappen”.

Voorbeeld van de eigenschappen van Excel van de uitvoer naar een TABEL.

Voorbeeld van een download definitie met als uitvoer DRAAITABEL:

Via de rechtermuisknop kunt U de opties van de draaitabel zichtbaar maken.


Gegevens vernieuwen¶

Met deze optie worden alle dynamische downloads en/of formules binnen uw Excel document opnieuw berekend. Deze optie kunt u gebruiken wanneer uw gegevens in het werkblad nog niet zijn bijgewerkt. De optie is vergelijkbaar met de knop “vernieuwen” van de Internet Explorer.
Help¶

Geeft u alle informatie die nodig is om ExSIONSQL te kunnen gebruiken.
Info¶


| Tab | Beschrijving | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Instellingen |
| ||||||||
| Support | Onze helpdesk kan op afstand support leveren via TeamViewer. | ||||||||
| Versie |
| ||||||||
| Licentie | Geeft het bedrijf waartoe een gebruikrecht is verleend en laat zien welke gebruikers een licentie hebben geactiveerd. |
Algemene functies¶
| Functie | Beschrijving |
|---|---|
| ExSIONSQL_DATUM | Geeft als resultaat een datumfilter. |
De algemene functies zijn terug te vinden in de functie wizard van Excel onder de categorie “ExSIONSQL Algemeen”:

ExSIONSQL_DATUM¶
De functie “ExSIONSQL_DATUM” geeft als resultaat een datumfilter. Het resultaat kan worden gebruikt voor functies waarin een datumfilter als argument opgegeven dient te worden.
| Argument | Beschrijving | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ID | Connectie ID. | ||||||||||||
| Type | Keuze uit 1=Dag, 2=Week, 3=Maand, 4=Kwartaal of 5=Jaar. | ||||||||||||
| Cumulatief | Ja, Nee of YTD (Jaar t/m datum). | ||||||||||||
| Index | Bij de index moet het nummer van het desbetreffende type ingevuld worden. Voor het type maand kan voor de index het getal 1 t/m 12 worden ingevuld. Een andere mogelijkheid is het invullen van een negatieve index of een 0. Voor elk type wordt vanaf de huidige datum in het ingegeven jaar teruggerekend afhankelijk van de index. Stel het is oktober 2018 en het type is maand, de index is “-1” en het jaar is 2018 dan krijgt u het datumfilter voor september 2018 als resultaat.
|
||||||||||||
| Jaar | Jaar (optioneel, standaard is het huidige jaar). |
Voorbeeld: ExSIONSQL_DATUM(1;"Maand";"Nee";2;"2018") geeft als resultaat: “01-02-18..28-02-18”.
Database functies¶
Gebruik van database functies wordt aanbevolen voor functies die alleen betrekking hebben op één Excel bestand. Deze functies hoeven niet in de functie bibliotheek te worden vastgelegd.
De database functies zijn terug te vinden in de functie wizard van Excel onder de categorie “ExSIONSQL Database”:

| Veld | Beschrijving |
|---|---|
| ExSIONSQL_DB | Geeft de (eerste) waarde van een veld binnen een tabel die overeenkomt met de opgegeven filter(s). |
| ExSIONSQL_DBANT | Geeft het aantal records binnen de tabel dat overeenkomt met de opgegeven filter(s). |
| ExSIONSQL_DBGEM | Geeft de gemiddelde waarde van een veld binnen een tabel die overeenkomt met de opgegeven filter(s). |
| ExSIONSQL_DBMAX | Geeft de grootste waarde van een veld binnen een tabel die overeenkomt met de opgegeven filter(s). |
| ExSIONSQL_DBMIN | Geeft de kleinste waarde van een veld binnen een tabel die overeenkomt met de opgegeven filter(s). |
| ExSIONSQL_DBSOM | Geeft de gesommeerde waarde van een veld binnen een tabel die overeenkomt met de opgegeven filter(s). |
| Argument | Beschrijving |
|---|---|
| ID | Connectie ID. |
| Definitie | Een functie definitie (bereik met daarin de tabel en index) waaruit de functie zijn gegevens haalt (zie: Functie definitie). |
| Veld | Het veld dat moet worden opgehaald via deze functie. |
| Filter 1 | De filter voor het eerste veld binnen de functie definitie (zie: Gebruik van filters). |
| Filter 2 | De filter voor het tweede veld binnen de functie definitie. |
| ... | Enz... |
Bibliotheek functies¶
De functie bibliotheek bezit de gebruiker gedefinieerde functies.
Deze functies werken als elke andere Excel of ExSIONSQL functie en zal beschikbaar zijn voor alle Excel documenten.
Deze bibliotheek kan worden gedeeld door alle ExSIONSQL gebruikers.
Gebruik van filters¶
U kunt bij de invoer van een filter alle cijfers en letters gebruiken die u normaal ook kunt gebruiken. Daarnaast kunt u een aantal speciale symbolen en rekenkundige formules gebruiken.
Dit zijn de beschikbare notities:
| Teken | Betekenis | Voorbeeld | Weergegeven records |
|---|---|---|---|
| = | Gelijk aan | 377 | Nummer 377. |
| BLAUW | Records met de code BLAUW, zoals de magazijncode BLAUW. | ||
| 22-1-2018 10:00 | Een exacte datum/tijd: 22-jan-2018 10:00:00. | ||
| .. | Tussen | 1100..2100 | Nummers 1.100 t/m 2.100. |
| ..2.500 | Tot en met 2500. | ||
| ..31-12-2018 | Datums tot en met 31-dec-2018. | ||
| ! | of/of | 1200|1300 | Records met nummer 1.200 of 1.300. |
| & | en | <2000&>1000 | Nummers kleiner dan 2000 en groter dan 1000. |
| <> | Niet gelijk aan | <>0 | Alle nummers behalve 0. |
| <>A* | Niet gelijk aan tekst die begint met A. | ||
| > | Groter dan | >1200 | Nummers groter dan 1.200 |
| >= | Groter dan of gelijk aan | >=1200 | Nummers groter dan of gelijk aan 1.200 |
| < | Kleiner dan | <1200 | Nummers kleiner dan 1.200 |
| <= | Kleiner dan of gelijk aan | <=1200 | Nummers kleiner dan of gelijk aan 1.200 |
| * | Een onbeperkt aantal onbekende tekens | *cem* | Tekst met de letters “cem” |
| cem* | Tekst die begint met “cem” | ||
| ? | Een onbekende teken | ?im | Tekst zoals Jim of Tim |
| () | Berekenen voor de rest | 30|(>=10&<=20) | Records met nummer 30 of met een nummer tussen 10 en 20 (het resultaat van de berekening tussen haakjes). |
U kunt de verschillende notatiesoorten ook combineren:
| Voorbeeld | Weergegeven records |
|---|---|
| 5999|8100..8490 | Alle records met het nummer 5.999 of een uit het interval tussen 8.100 en 8.490. |
| ..1299|1400.. | Records met een nummer kleiner dan of gelijk aan 1.299 of gelijk aan 1.400 en hoger. Met andere woorden: alle nummers behalve 1.300 tot en met 1.399. |
| >50&<100 | Records met een nummer groter dan 50 en kleiner dan 100, ofwel nummers 51 tot en met 99. |
| *C*&*D* | Tekst met de tekens C en D. |
| *bo?* | Tekst die begint met “bo” zoals boek, boekhouding en geboekt. “bo” moet in de tekst voorkomen, gevolgd door ten minste één teken en kan worden omgesloten door een onbeperkt aantal tekens in de vorm van zowel hoofdletters als kleine letters. |
Zorg dat u alleen zinvolle filters invoert. Het is bijvoorbeeld mogelijk om een niet-bestaande interval op te geven zonder dat dit wordt gecontroleerd.
VBA Tips¶
Als de mogelijkheden die Excel en ExSIONSQL standaard bieden nog niet genoeg zijn kunnen ze altijd nog in VBA gemaakt worden. ExSIONSQL heeft hiervoor events en functies die gebruikt kunnen worden om uw eigen VBA code en ExSIONSQL functies te combineren.
In de eerste paragraaf wordt dit uitgelegd. In de hoofdstukken daarna, volgen een aantal praktische tips en trucs die in het verleden door ons zijn toegepast en ook generiek te gebruiken zijn.
Automatische procedures met VBA¶
ExSIONSQL biedt de mogelijkheid eigen VBA procedures uit te voeren voor of na het gegevens vernieuwen. Verder is het andersom mogelijk de functie gegevens vernieuwen uit te voeren vanuit de eigen procedure. Houdt er wel rekening mee dat fouten die optreden binnen de eigen procedure van invloed kunnen zijn op de werking van ExSIONSQL. Test bij eventuele problemen altijd eerst uit of de fout ook optreed met standaard gebruik van ExSIONSQL zonder eigen procedures.
Aanroep vanuit een eigen procedure¶
Vanuit een eigen VBA procedure kan de functie gegevens vernieuwen worden aangeroepen. Op de plaats waar u in uw eigen procedure de gegevens wilt vernieuwen voegt u de volgende regel toe in de code via de VBA editor (F11):
Application.Run "'ExSIONSQL.xlam'!ExSIONSQL_REFRESH"
De uitvoering van deze regel heeft exact hetzelfde effect als het drukken op de knop “Gegevens vernieuwen” in het menu van ExSIONSQL.
Om de uitvoering niet afhankelijk te maken van ExSIONSQL kunt u het beste om de uitvoering van ExSIONSQL functies “On Local Error” regels toevoegen.
On Local Error Resume Next
Application.Run "'ExSIONSQL.xlam'!ExSIONSQL_REFRESH"
On Local Error GoTo 0
Naast gegevens vernieuwen kunt u ook de functie formules naar waarden automatisch uitvoeren. Neem hiervoor de volgende code op:
Application.Run "'ExSIONSQL.xlam'!ExSIONSQL_VALUES"
Indien u de vraag krijgt of de formules omgezet moeten worden naar waarden kunt u deze onderdrukken door meldingen tijdelijk uit te schakelen. Dat doet u door een regel voor en na de formules naar waarden actie te plaatsen. Eventueel kunt u de huidige instelling opslaan in een variabele om deze vervolgens weer terug te plaatsen.
Dim s_displayAlertsSetting As Boolean
s_displayAlertsSetting = Application.DisplayAlerts
Application.DisplayAlerts = False
On Local Error Resume Next
Application.Run "'ExSIONSQL.xlam'!ExSIONSQL_VALUES"
On Local Error GoTo 0
Application.DisplayAlerts = s_displayAlertsSetting
Uitvoering procedure voor gegevens vernieuwen¶
Het is mogelijk een procedure uit te voeren net voor het gegevens vernieuwen. Neem hiervoor de volgende code op in het project. Voer in plaats van “[Naam eigen procedure]” de naam in van de procedure die u wilt uitvoeren. Deze procedure dient binnen hetzelfde project aanwezig te zijn.
Sub ExSIONSQL_BEFOREREFRESH()
Call [Naam eigen procedure]
End Sub
Uitvoering procedure na gegevens vernieuwen¶
Naast het uitvoeren van een procedure net voor het gegevens vernieuwen is het ook mogelijk iets uit te voeren net na het gegevens vernieuwen. Neem hiervoor onderstaande code op in het project. Voer in plaats van “[Naam eigen procedure]” weer de naam in van de procedure die u wilt uitvoeren.
Sub ExSIONSQL_ONREFRESH()
Call [Naam eigen procedure]
End Sub
Automatisch verversen na wijziging parameter¶
Benoem de cel die u wijzigt met een logische naam. In het voorbeeld hieronder is dit ‘Subcategorie’. Indien u een andere naam gebruikt past u deze dan ook in onderstaande code aan.
Plaats vervolgens de volgende code in ThisWorkbook.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target = ActiveSheet.Range("Subcategorie") Then
Application.Run "'ExSIONSQL.xlam'!ExSIONSQL_REFRESH"
ActiveSheet.Calculate
End If
End Sub
Deactiveren¶
Om ExSIONSQL te deactiveren dient u de invoegtoepassing voor de gebruiker te deactiveren. U kunt dit doen door de volgende stappen uit te voeren:
Druk op de knop “Bestand” (Links boven aan in het scherm).

Druk op de knop “Opties”.

Kies voor de optie “Invoegtoepassingen” en druk op “Start...”.

Haal het vink voor de invoegtoepassing “ExSIONSQL 1.0” weg en druk op “OK”.

Het ExSIONSQL menu is verwijderd uit het lint van Excel, en de gebruikers licentie is vrijgegeven.





