Voor een aangepaste functie wordt de formuletaal M gebruikt, wordt een set invoerwaarden genomen en wordt één uitvoerwaarde geretourneerd. Als u logica hebt die u vele malen wilt hergebruiken of dezelfde set transformaties wilt toepassen op een andere query of waarde, kunt u een aangepaste functie maken en de functie vervolgens aanroepen waar en wanneer u deze nodig hebt. U kunt op verschillende manieren een aangepaste functie maken:
- Gebruik de Geavanceerde editor om uw eigen let-instructie toe te voegen en u kunt een geheel nieuwe instructie maken.
- Gebruik de opdracht Aangepaste functie aanroepen .
- Er zijn nog andere manieren om functies te maken die niet in dit Help-onderwerp worden besproken, zoals de opdrachten Functie maken en Toevoegen als query . Zie Informatie over Power Query M-functies (docs.com) en Aangepaste functies gebruiken (docs.com) voor een uitgebreide bespreking.
Een eenvoudige aangepaste functie maken en aanroepen met de Geavanceerde editor
Hier volgt een eenvoudig voorbeeld van een aangepaste functie die een oude programmeertraditie volgt.
Een lege query maken:
BewerkenGegevens>selecteren Gegevens>ophalen uit andere bronnen>Lege query.
Power Query Klik met de rechtermuisknop op een lege plek in het deelvenster Query's aan de linkerkant en selecteer vervolgens Nieuwe query>Andere bronnen>Lege query.
Dubbelklik in het deelvenster Query's aan de linkerkant op de naam en wijzig vervolgens de naam van de nieuwe lege query in 'HelloWorld'.
Selecteer de nieuwe query en vervolgens Start-Geavanceerde> editor.
Vervang de startcode voor sjablonen door de volgende code:
let
HelloWorld = () => ("Hello World")
in
HelloWorldSelecteer Gereed.
U hebt de query 'HelloWorld' gewijzigd in een aangepaste functie. Let op het
links ervan.Als u de functie wilt aanroepen, selecteert u deze en selecteert u vervolgens Aanroepen in Voorbeeld van gegevens.
De resultaten van de functie worden weergegeven in het gegevensvoorbeeld en toegevoegd aan het deelvenster Query's als een query met de standaardnaam Aangeroepen functie. Misschien wilt u de naam wijzigen in iets dat zinvoller is, zoals 'HelloWorldResult'.
Selecteer deze query en selecteer vervolgens Start>Sluiten & laden om de resultaten in een werkblad te zien.
Resultaten
Een aangepaste functie met een parameter maken en aanroepen met behulp van de Geavanceerde editor
In het volgende voorbeeld ziet u hoe u een parameter doorgeeft aan een aangepaste functie om een decimaal getal te converteren naar een hexadecimaal getal.
Een lege query maken:
BewerkenGegevens>selecteren Gegevens>ophalen uit andere bronnen>Lege query.
Power Query Klik met de rechtermuisknop op een lege plek in het deelvenster Query's aan de linkerkant en selecteer vervolgens Nieuwe query>Andere bronnen>Lege query.
Wijzig in het deelvenster Query's aan de linkerkant de naam van de nieuwe lege query in 'MyHex'.
Selecteer de nieuwe query en vervolgens Start-Geavanceerde> editor.
Vervang de startcode voor sjablonen door de volgende code:
let
MyHex = (parameter1) => Number.ToText(parameter1,"X")
in
MyHexSelecteer Gereed.
U hebt de query MyHex gewijzigd in een aangepaste functie. Let op het
links ervan.Als u de functie wilt aanroepen, selecteert u deze en voert u in het vak Voorbeeld van gegevens een getal in het vak parameter1 in en selecteert u Aanroepen.
De resultaten van de functie worden weergegeven in het gegevensvoorbeeld en toegevoegd aan het deelvenster Query's als een query met de standaardnaam Aangeroepen functie. Misschien wilt u de naam wijzigen in iets dat zinvoller is, zoals 'MyHexResult'.
Selecteer deze query en selecteer vervolgens Start>Sluiten & laden om de resultaten in een werkblad te zien.
Resultaten
Een kolom toevoegen door een aangepaste functie aan te roepen
Als u een functie met minimaal één parameter hebt gemaakt, kunt u deze als een aangepaste functie aanroepen om voor elke rij in een tabel een nieuwe kolom en een nieuwe waarde te maken.
Als u een query wilt openen, zoekt u een query die eerder is geladen in de Power Query-editor, selecteert u een cel in de gegevens en selecteert u vervolgens Query>bewerken. Zie Een query maken, bewerken en laden in Excel (Power Query) voor meer informatie.
Notitie Voor dit voorbeeld heeft uw query ten minste één kolom van het gegevenstype Geheel getal nodig.
Maak de aangepaste functie 'MyHex' zoals wordt beschreven in de sectie Een aangepaste functie maken en aanroepen die een parameter heeft met de Geavanceerde editor.
Selecteer Kolom toevoegenin de query Aangepaste >functie aanroepen. Het dialoogvenster Aangepaste functie aanroepen wordt weergegeven.
Typ de nieuwe kolomnaam, zoals 'HexConvert', in het vak Nieuwe kolomnaam .
Selecteer de naam van een vooraf gedefinieerde aangepaste functie in de vervolgkeuzelijst Functiequery. Selecteer in dit voorbeeld 'MyHex'.
Omdat de aangepaste functie verwijst naar een parameter, wordt de parameter nu weergegeven.
Selecteer een kolom van het gegevenstype Geheel getal als een parameter voor de functie.
Selecteer OK.
Resultaat
Er wordt een nieuwe kolom gemaakt waarin de hexadecimale waarde wordt weergegeven van de kolom met gehele getallen die u als parameter hebt ingevoerd.
Zie ook
Help voor Power Query voor Excel
Power Query-formules maken in Excel