IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Fonction retournant #N/A


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur

    Profil pro
    Inscrit en
    Août 2006
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 974
    Par défaut Fonction retournant #N/A
    (J'ai bien tenté de chercher dans le Forum, mais une recherche #N/A ne retourne rien...)

    Je développe une fonction VBA qui, sous certaines conditions, dont retourner la valeur #N/A. J'ai beau chercher dans l'aide, je trouve comment tester pour l'exception, mais je ne trouve pas comment assigner #N/A au résultat de ma fonction.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    function MaFonction(arguments...) as double
        if ... then
            MaFonction = #N/A
            exit function
        end if
        ...

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Bonjour,

    utilise CVErr ...:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MaFonction = CVErr(xlErrNA)

  3. #3
    Invité
    Invité(e)
    Par défaut
    Salut,

    Il faut que ta fonction soit typé Variant pour que le VBA créé un sous-type Error dans le cas où une valeur d'erreur est retourné, dans les autres cas comme ça, tu peux utiliser le Variant avec un sous-type Double pour retourner des valeurs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Function MaFonction(arguments) As Variant
        If True Then
            MaFonction = CVErr(XlCVError.xlErrNA)
            Exit Function
        End If
    End Function
     
     
     
    Sub Test()
        Dim v
        v = MaFonction(Empty)
    End Sub

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Août 2006
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 974
    Par défaut
    Merci. Ça fonctionne parfaitement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fonction retournant un pointeur
    Par Le Furet dans le forum C
    Réponses: 8
    Dernier message: 25/09/2005, 18h54
  2. Fonction retournant la partie entière d'un nombre
    Par annedjomo dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 12/11/2004, 15h58
  3. fonction retournant une valeur
    Par ryan dans le forum ASP
    Réponses: 4
    Dernier message: 06/09/2004, 17h45
  4. Declaration de fonction retournant un pointeur sur fonction
    Par pseudokifaitladifférence dans le forum C
    Réponses: 5
    Dernier message: 11/08/2003, 19h37
  5. [Manip de fichiers] Fonction retournant des infos
    Par sans_atouts dans le forum C
    Réponses: 3
    Dernier message: 24/07/2002, 14h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo