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