maandag 29 juni 2015

Functie EX.OF

We vertrekken van de ondertussen gekende personeelslijst. We hebben twee kolommen toegevoegd voor het bijhouden van de inschrijving voor sporten. Het is de bedoeling om te achterhalen wie er voor slechts 1 sport is ingeschreven. Bij inschrijving wordt ja vermeld in de cel. We gebruiken de nieuwe functie EX.OF voor excel 2013. Dit controleert logische waarden. We gaan eerst de tekst "ja" of "nee" vertalen naar een "1" of "0" via de logische functie ALS.

  • Neem de bovenstaande lijst over.
  • Klik in de cel K2.
  • Klik op het tabblad "Formules" in het lint.
  • Klik op het boekje "Logisch".
  • Klik op de functie "EX.OF".

Het dialoogvenster "Functieargumenten" verschijnt. We brengen in het vak logisch1 de functie ALS aan.

  • Klik op het pijltje van het naamvak
  • Ga op zoek in deze lijst naar de functie "ALS" en klik erop.

Het dialoogvenster "Functieargumenten" verschijnt.

  • Typ I2="ja" in het vak "Logische test"
  • Klik in het vak "Waarde-als-waar".

  • Typ 1 in het vak "Waarde-als-waar"
  • Klik in het vak "Waarde-als-onwaar".
  • Typ 0 in het vak "Waarde-als-onwaar".

  • Klik op "OK".

Met de functie is de controle voor de sport zwemmen uitgevoerd. Echter er ontbreekt nog een controle voor de sport squash.

  • Plaats de cursor vooraan in de naam EX.OF in de formulebalk.
  • Klik op fx vooraan de formulebalk.

Het dialoogvenster "Functieargumenten" verschijnt. Hierbij is het vak Logisch1 reeds ingevuld. We nemen een kopie van de inhoud van dit vak.

  • Selecteer de inhoud van het vak "Logisch1".
  • Kopieer dit via bijvoorbeeld de sneltoets CTRL C.
  • Klik in het vak "Logisch2".
  • Gebruik nu de sneltoets CTRL V.
  • Wijzig de I door J in het vak "Logisch2".

  • Klik op "OK".

  • Kopieer de formule naar beneden.

dinsdag 23 juni 2015

macro opnemen voor Filter geavanceerd

In een vorig punt werd de geavanceerde filter besproken. Bij elke wijziging van de criteria is het vereist om bepaalde instellingen terug aan te brengen in het dialoogvenster "Uitgebreid Filter". Om dit te vermijden ga ik een macro ontwerpen. Daartoe activeer ik eerst het tabblad "Ontwikkelaars" in het lint.

  • Klik op het tabblad "Bestand" in het lint.

  • Klik op "Opties".

  • Klik op "Lint aanpassen".

  • Klik op het vakje naast de vermelding "Ontwikkelaars" in de zone "Hoofdtabbladen".
  • Klik op "OK".

Het tabblad "Ontwikkelaars" is nu beschikbaar. Onderaan is nu ook de opdracht om een macro-opname te starten zichtbaar.

Eerst denk ik na welke stappen er allemaal gaan uitgevoerd worden. Eerst ga ik het vorig resultaat verwijderen. Het aantal lijnen voor die lijst weet ik niet op voorhand. Ik weet enkel met zekerheid de startcel van deze lijst. Met de sneltoets CTRL * kan ik de volledige lijst selecteren. Met de delete-toets kan ik deze lijst dan verwijderen. Daarna selecteer ik een cel van de databank en start ik de geavanceerde filter. Na het verschijnen van het nieuw resultaat stop ik de opname.
Nu ik weet wat er allemaal mag gebeuren, start ik de opname.

  • Klik op het tabblad "Ontwikkelaars" in het lint.
  • Klik op de opdracht "Macro opnemen".
Het dialoogvenster "Macro Opnemen" verschijnt.

Ik vul de macronaam in. Deze naam mag geen spaties bevatten.
  • Typ "mcrFilter" in het vak bij "Macronaam".
  • Klik in het vak bij "Sneltoets".
  • Druk op de toetsen "Shift" en "F".

Deze macro wordt in dit werkmap geplaatst. Dit is reeds geselecteerd bij "Macro opslaan in". Ik hoef dit niet te veranderen. Tenslotte vul ik nog een aantal kenmerken in bij het vak "Beschrijving".
  • Typ "jouw naam", "datum" en "versie 1" in het vak bij "Beschrijving".
  • Klik op "OK".

Alle acties die ik nu uitvoer worden in de achtergrond vertaald naar visual basic. Merk op dat de voorgaande knop voor de macro-opname is gewijzigd in een vierkant. Deze knop kan ik nu gebruiken om de opname te stoppen, nadat alle handelingen zijn uitgevoerd.

  • Klik in de cel K7.

  • Druk op de toetsen CTRL *.

  • Druk op de toets Delete.

  • Klik in de cel A1.

  • Klik op het tabblad "Gegevens" in het lint.
  • Klik op de opdracht "Geavanceerd".

Het dialoogvenster "Uitgebreid Filter" verschijnt.

  • Stip "Kopiëren naar andere locatie" aan.

  • Selecteer het voorstel in het vak "Lijstbereik".
  • Duw op de toets F3.

Het dialoogvenster "Naam plakken" verschijnt.
  • Duid "personeel" aan.

  • Klik op "OK".
  • Selecteer het voorstel in het vak "criteriumbereik".

  • Duw op de toets F3.
  • Duid "criteria" aan.

  • Klik op "OK".

  • Selecteer het voorstel in het vak "Kopiëren naar".

  • Klik in cel K7".

  • Klik op "OK".
Het resultaat verschijnt.

  • Klik op de knop "Opname stoppen".

We controleren de werking van de macro. We brengen een nieuw criteria aan. En voeren de macro uit met de sneltoets.
  • Klik in de cel "P2".
  • Typ "Verkoop" en bevestig met CTRL Enter.

  • Pas de sneltoets CTRL SHIFT F toe.
De nieuwe lijst verschijnt met alle personeelsleden uit de afdeling verkoop.

We gaan dit document bewaren. Momenteel heeft dit document de extensie "xlsx". Voor macro's is een extensie "xlsm" vereist. We gaan dit veranderen via opslaan als.
  • Klik op "Bestand" in het lint.

  • Klik op "Opslaan als".

  • Klik op "Bladeren".


  • Wijzig "Excel-werkmap (*.xlsx)" door "Excel-werkmap met macro's (*.xlsm)".

  • Klik op "Opslaan".

We testen deze marco nog eens voor een ander criteria.
  • Klik in de cel "P2".
  • Typ "Prod" en bevestig met CTRL Enter.
  • Klik in de cel "N2".
  • Typ "v" en bevestig met CTRL Enter.

  • Pas de sneltoets CTRL SHIFT F toe.
De vrouwelijke personeelsleden die tot de afdeling productie behoren verschijnen in de lijst.