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 personnalisée dans une feuille de calcul


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 124
    Par défaut Fonction personnalisée dans une feuille de calcul
    Bonjour,

    J'ai essayé de créer une fonction personnalisée me permettant de déterminer si une valeur est présente ou non dans une plage. voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Function ESTPRESENT(TEXTE As String, PLAGE As Range) As Boolean
     
    If PLAGE.Find(TEXTE) Is Nothing Then
        ESTPRESENT = False
    Else
        ESTPRESENT = True
    End If
     
    End Function
    Cette fonction marche bien en VBA. Mais lorsque j'utilise cette fonction personnalisée sur une feuille de calcul, je sélectionne ma plage et le résultat est systématiquement "FAUX".
    Est-ce que qqn sait pourquoi?
    Merci de votre aide. John81

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bonjour,

    Commence par nous montrer la formule mise dans ta cellule.

  3. #3
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 124

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    J'ai refais ta fonction, j'ai testé; si la valeur de H2 (en entier) existe en colonne A;->vrai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Public Function ESTPRESENT(TEXTE As String, PLAGE As Range) As Boolean
     
    ESTPRESENT = IIf(PLAGE.Find(Trim(TEXTE)) Is Nothing, False, True)
     
    End Function

  5. #5
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Oui...
    Et il serait bon de forcer le calcul systématique par

  6. #6
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Je crois le Application.Volatile n'est pas nécessaire
    ou je me trompe

  7. #7
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 124
    Par défaut
    C'est bizarre mais chez moi ça me donne toujours la valeur "FAUX"

  8. #8
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Citation Envoyé par John81 Voir le message
    C'est bizarre mais chez moi ça me donne toujours la valeur "FAUX"
    Ah...
    Et tu dis que si tu utilises la même fonction en lui passant une plage et un texte depuis VBA (et pas depuis une cellule, en formule) , tout va par contre bien ?

    Etrange, en effet....

    Je n'ai pas les moyens, en ce moment, d'essayer, mais il n'est pas impossible que nous nous trouvions devant un autre cas de figure de carence de "grattage" conjoint entre deux équipes (celle d'EXCEL et celle de VB).

    Va jeter un coup d'oeil à cette discussion qui n'a pas passionné les foules, apparemment (et pourtant ....) :
    http://www.developpez.net/forums/d83...o/#post4766914
    Cela ne résoudra pas ton problème, qui demeure toutefois intéressant (décidément) si tu confirmes la différence de réaction entre depuis VBA et depuis une cellule...

Discussions similaires

  1. Réponses: 9
    Dernier message: 23/02/2008, 08h07
  2. Supprimer une/des image(s) dans une feuille de calcul
    Par Lorenzole+bo dans le forum Excel
    Réponses: 1
    Dernier message: 21/12/2007, 11h23
  3. Utiliser un userform pour lire et écrire dans une feuille de calculs
    Par sebi78 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/04/2007, 19h51
  4. [VBA-E] Nommer chemin d'accès dans une feuille de calcul.
    Par BRUNO71 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 09/03/2007, 13h30
  5. [VBA-E] Passer d'un contrôle à l'autre avec tab dans une feuille de calculs
    Par small_heart dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 23/02/2007, 20h57

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