emkiset.ru

Hoe een door de gebruiker gedefinieerde functie in Microsoft Excel te maken

Hoewel Excel vele, misschien honderden, geïntegreerde functies heeft, zoals SUMAR, VERT.ZOEKEN, LINKS, en anderen, zodra u het begint te gebruiken om meer gecompliceerde taken uit te voeren, zult u ontdekken dat u een functie nodig hebt die niet bestaat. Maak je geen zorgen, je bent niet helemaal verloren, je hoeft alleen die functie zelf te maken.

stappen

Titel afbeelding Create a User Defined Function in Microsoft Excel Stap 1
1
Maak een nieuw boek of open een boek waarin u de door de gebruiker gedefinieerde functie wilt gebruiken (ook bekend als "UDF", op zijn acroniem in het Engels) nieuw gemaakt.
  • Titel afbeelding Create a User Defined Function in Microsoft Excel Stap 2
    2
    Open de Visual Basic-editor, die zich in Microsoft Excel bevindt door naar Tools te gaan > macro > Visual Basic Editor (of door op Alt + F11 te drukken).
  • Titel afbeelding Create a User Defined Function in Microsoft Excel Stap 3


    3
    Voeg een nieuwe module toe aan het boek door op de getoonde knop te klikken. U kunt de door de gebruiker gedefinieerde functie in dezelfde spreadsheet maken zonder een nieuwe module toe te voegen, maar hierdoor kunt u deze niet gebruiken in andere werkbladen binnen hetzelfde boek.
  • Titel afbeelding Create a User Defined Function in Microsoft Excel Step 4
    4



    Maak het uitgangspunt van de functie. Het moet de volgende structuur hebben:

    functie: "Naam van de functie" (param1 As type1, param2 As type2) As Soort rendement.Dit kan het aantal gewenste parameters hebben en het type kan een van de standaard Excel-gegevenstypen of objecttypen zijn, zoals "rang". Stel je voor dat de parameters de zijn "operanden" waarmee uw functie zal werken. Als u bijvoorbeeld SEN (45) zegt om de sinus van 45 graden te berekenen, wordt dat aantal als een parameter genomen. Daarom gebruikt de code van uw functie die waarde om iets anders te berekenen en het resultaat te presenteren.
  • 5
    Voeg de functiecode toe en zorg ervoor dat 1) de waarden gebruikt die door de parameters worden verstrekt- 2) wijs het resultaat toe aan de naam van de functie en 3) sluit de functie met de zin "Eindfunctie". Leren programmeren in VBA of in een ander type programmeertaal kan enige tijd duren en vereist een gedetailleerde zelfstudie. Functies hebben echter meestal kleine codeblokken en gebruiken maar heel weinig functies van een programmeertaal. De nuttigste elementen van de VBA-taal zijn:
  • Het blok als (Ja) voert een deel van de code alleen uit als aan een voorwaarde is voldaan, bijvoorbeeld:


    Functie Course result (As Integer grade) As String
    Als cijfer >= 5 dan
    Resultaat = "aangenomen"
    anders
    Resultaat = "verworpen"
    Einde als
    Eindfunctie


    Observeer de elementen in een codeblok Als: IF-conditie DAN code ELSE-code END IF. Het sleutelwoord Anders (anders) samen met het tweede deel van de code zijn optioneel.
  • Het blok do (do) ​​voert een deel van de code uit Terwijl (terwijl) of Tot (totdat) wanneer aan een voorwaarde is voldaan, bijvoorbeeld:

    Functie EsPrimo (waarde als geheel getal) Als Boolean
    Dim i As Integer
    i = 2
    IsPrime = Waar
    do
    Als waarde / i = Int (waarde / i) Dan
    EsPrimo = False
    Einde als
    i = i + 1
    Loop While i Eindfunctie


    Kijk nog eens naar de elementen: OD code LOOP WHILE / UNTIL conditie. Let ook op de tweede regel waarin "het is verklaard" een variabele. U kunt variabelen aan de code toevoegen, zodat u ze later kunt gebruiken. De variabelen fungeren als tijdelijke waarden binnen de code. Kijk ten slotte naar de verklaring van de functie als BOOLEAN. Dit is een gegevenstype dat alleen de waarden TRUE (true) en FALSE (false) toestaat. Deze methode om te bepalen of een nummer prime is, is niet erg optimaal, maar het is zo gebleven om de code leesbaarder te maken.
  • Het blok voor (om een ​​deel van de code een bepaald aantal keren uit te voeren, bijvoorbeeld:

    Functie Factoriaal (waarde als geheel getal) As Long
    Dimresultaat As Long
    Dim i As Integer
    Als waarde = 0 Dan
    resultaat = 1
    Anders Als waarde = 1 Vervolgens
    resultaat = 1
    anders
    resultaat = 1
    Voor i = 1 Om te waarderen
    resultaat = resultaat * i
    volgende
    Einde als
    Factorie = resultaat
    Eindfunctie


    Kijk nog eens naar de elementen:FOR variable = lower limit TO upper limit code VOLGENDE. Let ook op het toegevoegde element Anders dan in de verklaring If, waarmee meer opties aan de code kunnen worden toegevoegd die zal worden uitgevoerd. Kijk tenslotte naar de verklaring van de functie en de variabele "resultaat" als Long. Het type gegevens Long staat veel hogere waarden toe dan Integer.

    De code voor een functie die kleine getallen omzet in woorden, wordt hieronder weergegeven.
  • Titel afbeelding Create a User Defined Function in Microsoft Excel Stap 6
    6
    Ga terug naar het boek en gebruik de functie die begint met de inhoud van een cel met een bord gelijk (=) gevolgd door de naam van uw functie. Aan de naam van de functie voegt u een openingshaakje toe, de parameters gescheiden door komma`s en een haakje sluiten. Bijvoorbeeld:

    = NumberToLetters (A4)

    U kunt ook de formule gebruiken die is gedefinieerd door de gebruiker die ernaar op zoek is in de categorie Functies gedefinieerd door de gebruiker in de formule-assistent "invoegen". Klik op de knop Fx links van de formulebalk. De parameters kunnen uit drie soorten zijn:
  • De constante waarden die direct in de formule van de cel zijn geschreven. Tekenreeksen moeten in dit geval worden vermeld.
  • Celverwijzingen als B6 of rang als A1: C3 (de parameter moet van het gegevenstype zijn Range).
  • Andere functies die binnen uw functie vallen (uw functie is ook te vinden in andere functies). Dat is: = Factorial (MAX (D6: D8))
  • Titel afbeelding Create a User Defined Function in Microsoft Excel Stap 7
    7
    Controleer of de waarde correct is nadat u de functie verschillende keren hebt gebruikt om ervoor te zorgen dat deze op de juiste manier verschillende parameterwaarden verwerkt.
  • tips

    • Elke keer dat je een blok code schrijft binnen een controlestructuur zoals "als", "voor", "do", onder andere, zorg ervoor dat er een inspringing achterblijft in het codeblok dat enkele lege spaties of tabellering achterlaat (de inspringstijl hangt van u af). Hierdoor wordt uw code begrijpelijker en is het ook veel gemakkelijker om fouten te detecteren en verbeteringen aan te brengen.
    • Excel heeft veel geïntegreerde functies en de meeste berekeningen kunnen onafhankelijk of in combinatie met anderen worden gedaan. Zorg ervoor dat u de lijst met beschikbare functies bekijkt voordat u begint deze zelf te maken. Het uitvoeren van berekeningen kan sneller als u de ingebouwde functies gebruikt.
    • Gebruik een naam die niet is gedefinieerd als de naam van een functie in Excel, maar u kunt er slechts één gebruiken.
    • Af en toe vereist een functie mogelijk niet alle parameters om een ​​resultaat te berekenen. In dat geval kunt u het sleutelwoord gebruiken Optioneel voor de naam van de parameter in de functiekop. U kunt de functie gebruiken IsMissing (naam_van_parameter) in de code om te bepalen of de parameter al dan niet aan een waarde is toegewezen.
    • Als u niet weet hoe u de code voor een functie moet schrijven, leest u het artikel "Hoe een macro in Excel te maken".

    waarschuwingen

    • Vanwege beveiligingsmaatregelen kunnen sommige mensen macro`s uitschakelen. Zorg ervoor dat je tegen je collega`s zegt dat het boek dat je ze stuurt macro`s bevat en dat ze erop kunnen vertrouwen dat ze hun computers niet beschadigen.
    • De functies die in dit artikel worden gebruikt, zijn zeker niet de enige manier om de gerelateerde problemen op te lossen. Ze werden in het heden alleen gebruikt om het gebruik van de besturingsstructuren van de programmeertaal uit te leggen.
    • De VBA heeft, net als bij elke andere programmeertaal, naast verschillende besturingsstructuren "do", "als" en "voor". Deze zijn in dit artikel alleen uitgelegd om het soort dingen te verduidelijken dat kan worden gedaan binnen de broncode van de functie. Er zijn veel tutorials beschikbaar op internet waar je VBA kunt leren.
    Delen op sociale netwerken:

    Verwant
    Hoe koppelingen toe te voegen in ExcelHoe koppelingen toe te voegen in Excel
    Hoe een kolom in een draaitabel toe te voegenHoe een kolom in een draaitabel toe te voegen
    Hoe Microsoft Visual Basic te lerenHoe Microsoft Visual Basic te leren
    Hoe rapporten in Excel te automatiserenHoe rapporten in Excel te automatiseren
    Hoe het gemiddelde en de standaarddeviatie te berekenen met Excel 2007Hoe het gemiddelde en de standaarddeviatie te berekenen met Excel 2007
    Hoe een macro in Excel te makenHoe een macro in Excel te maken
    Hoe een regressieanalyse in Excel uit te voerenHoe een regressieanalyse in Excel uit te voeren
    Hoe herhaalde records in Excel 2007 te verwijderenHoe herhaalde records in Excel 2007 te verwijderen
    Hoe een wachtwoord in te stellen in Excel 2007Hoe een wachtwoord in te stellen in Excel 2007
    Hoe meervoudige regressies in Excel te doenHoe meervoudige regressies in Excel te doen
    » » Hoe een door de gebruiker gedefinieerde functie in Microsoft Excel te maken
    © 2021 emkiset.ru