Een aangepaste functie maakt gebruik van de formuletaal M, neemt een set invoerwaarden en retourneert vervolgens één uitvoerwaarde. Als u logica hebt die u vaak wilt hergebruiken of dezelfde set transformaties wilt toepassen op een andere query of waarde, kunt u overwegen om een aangepaste functie te maken en vervolgens de functie aan te roepen waar en wanneer u deze nodig hebt. Er zijn verschillende manieren om een aangepaste functie te maken:
-
Gebruik de Geavanceerde editor om uw eigen let-instructie toe te voegen en helemaal opnieuw te beginnen.
-
Gebruik de opdracht Aangepaste functie aanroepen .
-
Er zijn aanvullende manieren om functies te maken die niet in dit Help-onderwerp worden besproken, waaronder de opdrachten Functie maken en Toevoegen als een query . Zie Inzicht in Power Query M-functies (docs.com)en Aangepaste functies gebruiken (docs.com) voor een uitgebreide discussie.
Hier volgt een eenvoudig voorbeeld van een aangepaste functie die een lange programmeertraditie volgt.
-
Een lege query maken:
Excel Selecteer Gegevens > 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 de naam van de nieuwe lege query in 'HelloWorld'.
-
Selecteer de nieuwe query en selecteer vervolgens Start > Geavanceerde editor.
-
Vervang de sjabloonstartcode door de volgende code:
let HelloWorld = () => ("Hello World") in HelloWorld
-
Selecteer Gereed.
-
U hebt de query HelloWorld gewijzigd in een aangepaste functie. Let op dat het functiepictogram links van het pictogram
. -
Als u de functie wilt aanroepen, selecteert u deze en selecteert u vervolgens Aanroepen in gegevensvoorbeeld.
-
De resultaten van de functie worden weergegeven in gegevensvoorbeeld en toegevoegd aan het deelvenster Query's met de standaardnaam Aangeroepen functie. U kunt de naam van de naam wijzigen in een zinvoller item, zoals 'HelloWorldResult'.
-
Selecteer die query en selecteer vervolgens Start > Sluiten & Laden om de resultaten in een werkblad te bekijken.
Resultaten
In het volgende voorbeeld ziet u hoe u een parameter doorgeeft aan een aangepaste functie om een decimaal getal te converteren naar hexadecimaal.
-
Een lege query maken:
Excel Selecteer Gegevens > 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 selecteer vervolgens Start > Geavanceerde editor.
-
Vervang de sjabloonstartcode door de volgende code:
let MyHex = (parameter1) => Number.ToText(parameter1,"X") in MyHex
-
Selecteer Gereed.
-
U hebt de query MyHex gewijzigd in een aangepaste functie. Let op dat het functiepictogram links van het pictogram
. -
Als u de functie wilt aanroepen, selecteert u deze en voert u in Gegevensvoorbeeld een getal in het vak parameter1 in en selecteert u Aanroepen.
-
De resultaten van de functie worden weergegeven in gegevensvoorbeeld en toegevoegd aan het deelvenster Query's als een query met de standaardnaam Aangeroepen functie. U kunt de naam van deze naam wijzigen in een zinvoller item, zoals 'MyHexResult'.
-
Selecteer die query en selecteer vervolgens Start > Sluiten & Laden om de resultaten in een werkblad te bekijken.
Resultaten
Als u een functie met ten minste één parameter hebt gemaakt, kunt u deze aanroepen als een aangepaste functie om een nieuwe kolom en een nieuwe waarde te maken voor elke rij in een tabel.
-
Als u een query wilt openen, zoekt u er een die eerder is geladen vanuit 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 uitgelegd in de sectie Een aangepaste functie maken en aanroepen met een parameter met de Geavanceerde editor.
-
Selecteer in de query Kolom toevoegen > Aangepaste functie aanroepen. Het dialoogvenster Aangepaste functie aanroepen wordt weergegeven.
-
Voer de nieuwe kolomnaam in, zoals HexConvert, in het vak Nieuwe kolomnaam .
-
Selecteer de naam van een vooraf gedefinieerde aangepaste functie in de vervolgkeuzelijst Functiequery. In dit voorbeeld selecteert u 'MyHex'.
-
Omdat de aangepaste functie verwijst naar een parameter, wordt de parameter nu weergegeven.
-
Selecteer een kolom van een gegevenstype Geheel getal als parameter voor de functie.
-
Selecteer OK.
Resultaat
Er wordt een nieuwe kolom gemaakt met de hexadecimale waarde van de kolom Geheel getal die u als parameter hebt ingevoerd.
Zie ook
Help voor Power Query voor Excel
Power Query-formules maken in Excel