Antwoord:
|
Excel, accentueren formules in celbereik
Een krachtig mechanisme is het zeker "voorwaardelijk opmaak". Met gebruikmaking van voorwaardelijke opmaak is het mogelijk om cellen met formules te identificeren en te accentueren. Hoe vaak komt het voor dat je per ongeluk een of meerdere cellen overschrijft met vaste waarden om er daarna achter te komen dat de inhoud van de cellen niet constant was, maar dat de cellen formules bevatten.
Een mechanisme om dit te voorkomen is om cellen met formules te beveiligen. Een ander middel is om relevante cellen in het werkblad herkenbaar te maken.
Hierbij kan gebruik worden gemaakt van "voorwaardelijke opmaak" (beschikbaar in Excel 97 en later). De techniek maakt het mogelijk het werkblad zo in te stellen dat alle cellen met een formule afwijken van de standaardopmaak.
Voer hiervoor de volgende stappen uit:
- Kies voor: Invoegen -> Naam -> Definiëren
In het dialoogscherm dat wordt getoond, voer de volgende naam in het tekstvak "Namen in werkmap":
CelHeeftFormule
- Vul dan in het tekstvak " Verwijst naar:" de volgende formule in :
=CEL.LEZEN(48;INDIRECT("rk";ONWAAR))
- Klik op Toevoegen, en dan OK.
- Selecteer de cellen die je wilt voorzien van de voorwaardelijke opmaak.
- Kies onder Opmaak -> Voorwaardelijke opmaak . . .
- In het getoonde dialoogscherm selecteer "Formule is" uit de lijst en voer vervolgens de volgende formule in:
=CelHeeftFormule
- Selecteer onder Opmaak...
de gewenste opmaak die de cellen moeten hebben indien deze een formule bevatten.
- Klik op OK.
Na deze bewerkingen zal iedere cel die een formule bevat in het bereik dat in stap 4 is geselecteerd worden getoond in de gespecificeerde opmaak.
Hoe werkt het eigenlijk ?
Het belangrijkste is het maken van de formule in stap 1. Deze formule staat niet - zoals een gebruikelijke standaardformule - in een cel, maar reageert wel als een formule door een waarde terug te geven. In het bovenstaand voorbeeld is de waarde WAAR of ONWAAR.
Hierbij wordt gebruik gemaakt van de functie CEL.LEZEN die onderdeel is van de XLM macro taal (voorloper van VBA). De functie kan niet rechtstreeks worden gebruikt in een werkblad.
Door gebruik te maken van de parameter met de waarde 48 voor CEL.LEZEN wordt celinformatie terugontvangen (WAAR als de cel een formule bevat, ONWAAR als de cel geen formule bevat). Met de functie INDIRECT() maken we een verwijzing naar iedere cel in het geselecteerde bereik.
In de huidige Excel help zul je geen toelichting vinden over de functie CEL.LEZEN en als je de functie rechtstreeks in het werkblad zou gebruiken zou dit resulteren in de melding "Deze functie is ongeldig". Hé, dit is een andere reactie van Excel dan in het geval van het invoeren van een niet bestaande functie "#NAAM?".
Dus wat is CEL.LEZEN eigenlijk ? Mensen die al geruime tijd ervaring hebben met Excel, zullen CEL.LEZEN herkennen als Excel 4.0 Macro functie
Deze functies worden weliswaar nog steeds door de modernere versie van Excel herkend, maar zijn zelden nog zinvol in gebruik.
Wil je geen gebruik maken van functies uit het verleden, dan kan hetzelfde worden bereikt door het gebruik van een simpele VBA functie. Doe dan het volgende:
- Selecteer Extra -> Macro -> Visual Basic Editor
In VBA moet de betreffende toe te voegen functie worden opgenomen in een bestaande of nieuw toe te voegen module.
- Indien er nog geen module bestaat kies dan voor Invoegen -> Module. Selecteer in het andere geval de bestaande module.
- Voeg de volgende functie in de code van de module toe:
Function BevatFormule(C As C) As Boolean
BevatFormule = C.HasFormula
End Function
- Sluit hierna de editor en ga terug naar het Excel werkblad.
- Selecteer cel A1,
- Kies voor Voorwaardelijke Opmaak.
- Kies "Formule is"
- Voer de formule "=BevatFormule(A1)" in.
- Definieer de gewenste opmaak.
- Knip/Plak de betreffende opmaak naar de cellen in het gewenste bereik.
Alle cellen die een formule bevatten zullen nu in de gedefinieerde opmaak worden getoond.
Probeer het eens uit en vergroot je kennis van Excel.
N.B. Het is ook mogelijk om met behulp van selecteren speciaal cellen te selecteren die formules bevatten.
Naar boven . . .
|