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.