Een aangepaste functie gebruikt de formuletaal M, neemt een set invoerwaarden en geeft één uitvoerwaarde als resultaat. Als u logica hebt die u vaak opnieuw wilt gebruiken of dezelfde set transformaties wilt toepassen op een andere query of waarde, kunt u overwegen een aangepaste functie te maken en vervolgens de functie in te stellen 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 opnieuw te beginnen.
-
Gebruik de opdracht Aangepaste functie aanroepen.
-
Er zijn extra manieren om functies te maken die niet worden besproken in dit Help-onderwerp, zoals de opdrachten Functie maken en Toevoegen als query. Zie Power Query M-functies (docs.com)en Aangepaste functies gebruiken (docs.com) voor een uitgebreide discussie.
Het volgende is een eenvoudig voorbeeld van een aangepaste functie die een lange programmeertraditie volgt.
-
Als u een lege query wilt maken: Excel Gegevens selecteren> Gegevens > 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> Advanced 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 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 als een query met de standaardnaam, Aangeroepen functie. U kunt de naam van de naam wijzigen in iets zinvoller, zoals 'HelloWorldResult'.
-
Selecteer die query en selecteer vervolgens Start> Sluiten & Laden om de resultaten in een werkblad weer te geven.
Resultaten
In het volgende voorbeeld ziet u hoe u een parameter doorgeeft aan een aangepaste functie om een decimaal getal te converteren naar hexadecimaal.
-
Als u een lege query wilt maken: Excel Gegevens selecteren> Gegevens > 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> Advanced 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 het functiepictogram links van het pictogram.
-
Als u de functie wilt aanroepen, selecteert u deze en typt u vervolgens in Gegevensvoorbeeld een getal in het vak parameter1 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 de naam wijzigen in iets zinvoller, zoals 'MyHexResult'.
-
Selecteer die query en selecteer vervolgens Start> Sluiten & Laden om de resultaten in een werkblad weer te geven.
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 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) voormeer informatie. Opmerking In dit voorbeeld heeft uw query ten minste één kolom van een gegevenstype Geheel getal nodig.
-
Maak de aangepaste functie 'MyHex', zoals uitgelegd in de sectie Een aangepaste functie maken en aanroepen die een parameter heeft 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 vervolgkeuze van de functiequery. Selecteer in dit voorbeeld '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
Power Query-formules maken in Excel