Comment créer une fonction définie par l'utilisateur dans microsoft excel

Même lorsque Excel a beaucoup, probablement des centaines, des fonctions intégrées comme SUM, RECHERCHEV, GAUCHE, et ainsi de suite, une fois que vous commencez à utiliser Excel pour des tâches plus complexes, vous trouverez souvent que vous avez besoin d'une fonction qui ne existe pas. Ne vous inquiétez pas, vous n'êtes pas du tout perdu, tout ce que vous avez besoin est de créer la fonction vous-même.

Les Étapes

Créez une fonction définie par l'utilisateur dans Microsoft Excel Étape 1 Version 3.jpg
1
Créer un nouveau classeur ou ouvrez le classeur dans lequel vous souhaitez utiliser votre User Defined Function nouvellement créé (UDF).


Créez une fonction définie par l'utilisateur dans Microsoft Excel Étape 2 Version 3.jpg
2
Ouvrez Visual Basic Editor qui est intégré dans Microsoft Excel en allant à Outils-> Macro-> Visual Basic Editor (ou en appuyant sur Alt + F11).
Créez une fonction définie par l'utilisateur dans Microsoft Excel Étape 3 Version 3.jpg
3
Ajouter un nouveau module à votre classeur en cliquant sur le bouton ci. Vous pouvez créer l'utilisateur fonction définie dans la feuille de travail lui-même sans l'ajout d'un nouveau module, mais que ferez-vous incapable d'utiliser la fonction dans d'autres feuilles de calcul du même classeur.






Créez une fonction définie par l'utilisateur dans Microsoft Excel Étape 4 Version 3.jpg
4
Créez la "tête" ou "prototype" de votre fonction. Il doit avoir la structure suivante:

fonction publique »Le nom de votre fonction" (param1 Comme type1, param2 Comme type2) comme type de retourIl peut avoir autant de paramètres que vous voulez, et de leur type peut être l'un des types de données de base d'Excel ou de types d'objets que la gamme. Vous pouvez penser que des paramètres comme le "opérandes" votre fonction sera agir. Par exemple, quand vous dites NAS (45) pour calculer le sinus de 45 degrés, 45 seront prises en tant que paramètre. Puis le code de votre fonction utiliser cette valeur pour calculer quelque chose d'autre et de présenter le résultat.
Créez une fonction définie par l'utilisateur dans Microsoft Excel Étape 5 version 3.jpg
5
Ajoutez le code de la fonction en vous assurant 1) utiliser les valeurs fournies par le Parameters- 2) affecter le résultat du nom de la fonction- et 3) fermez la fonction avec "End Function".Apprendre à programmer en VBA ou dans toute autre langue peut prendre un certain temps et un tutoriel détaillé. Toutefois, les fonctions sont généralement de petits blocs de code et utilisent très peu les caractéristiques d'une langue. Les éléments les plus utiles du langage VBA sont:
  1. Le Si bloc, ce qui vous permet d'exécuter une partie du code que si une condition est remplie. Par exemple:


    Fonction publique Cours Résultat (grade As Integer) As String
    Si grade> = 5 Puis
    CourseResult = "Approuvé"
    Autre
    CourseResult = "Rejeté"
    End If
    End Function


    Notez les éléments dans un Si bloc de code: SI condition ALORS Code code AUTRE FIN SI. Le Autre mot-clé avec la seconde partie du code sont facultatifs.
  2. Le Faire Du bloc, qui exécute une partie du code Pendant Le ou bien Jusqu'à Ce Que une condition est remplie. Par exemple:

    Fonction publique ISPrime (valeur As Integer) As Boolean
    Dim i As Integer
    i = 2
    ISPrime = True
    Faire Du
    Si la valeur / i = Int (valeur / i) Puis
    ISPrime = False
    End If
    i = i + 1
    Loop While i lt; Et la valeur ISPrime = True
    End Function


    Notez à nouveau les éléments: Do While code LOOP / condition UNTIL. Notez également la deuxième ligne dans laquelle une variable est "déclaré". Vous pouvez ajouter des variables à votre code de sorte que vous pouvez les utiliser plus tard. Variables agissent valeurs temporaires à l'intérieur du code. Enfin, notez la déclaration de la fonction As Boolean, qui est un type de données qui ne permet que les valeurs VRAI et FAUX. Cette méthode de déterminer si un nombre est premier est de loin pas le optimal, mais je ai laissé cette façon de rendre le code plus facile à lire.
  3. Le Pour L bloc, qui exécute une partie du code d'un nombre de fois spécifié. Par exemple:

    Fonction publique factorielle (valeur As Integer) As Long
    Résultat Dim As Long
    Dim i As Integer
    Si la valeur = 0 Then
    résultat = 1
    ElseIf valeur = 1 Ensuite
    résultat = 1
    Autre
    résultat = 1
    Pour i = 1 à la valeur
    résultat = résultat * i
    Au Suivant
    End If
    Factorielle = résultat
    End Function


    Notez à nouveau les éléments:POUR variable = limite inférieure au code de limite supérieure PROCHAINE. Notez également l'ajoutée ElseIf dans l'élément Si déclaration, qui vous permet d'ajouter plus d'options pour le code qui doit être exécuté. Enfin, notez la déclaration de la fonction et la variable «résultat» que Longue. Le Longue type de données permet des valeurs beaucoup plus grande que Entier.

    Montré ci-dessous est le code pour une fonction qui convertit de petits nombres en mots.
  4. Créez une fonction définie par l'utilisateur dans Microsoft Excel Étape 6 Version 3.jpg


    6
    Retour à votre classeur et utiliser la fonction en commençant par le contenu d'une cellule avec un égal signe suivi par le nom de votre fonction. Ajouter au nom de la fonction d'une parenthèse d'ouverture, les paramètres séparés par virgules et une parenthèse de fermeture définitive. Par exemple:

    = NumberToLetters (A4)

    Vous pouvez également utiliser votre formule définie par l'utilisateur à sa recherche dans le Défini Par L'Utilisateur catégorie dans l'assistant Insérer une formule. Il suffit de cliquer dans la Fx bouton situé à gauche de la formule paramètres bar.The peuvent être de trois types:
    1. Les valeurs constantes saisies directement dans la formule de la cellule. Cordes doivent être cités dans ce cas.
    2. Les références de cellule comme B6 ou références de plage comme A1: C3 (Le paramètre doit être de la La Gamme type de données)
    3. Autres fonctions imbriquées dans votre fonction (votre fonction peuvent également être imbriquées dans d'autres fonctions). I.e .: = factorielle (MAX (D6: D8))
    4. Créez une fonction définie par l'utilisateur dans Microsoft Excel Étape 7 Version 3.jpg
      7
      Vérifiez le résultat est OK après l'utilisation de la fonction plusieurs fois pour se assurer qu'il gère différentes valeurs de paramètres correctement:




    5. » » Comment créer une fonction définie par l'utilisateur dans microsoft excel