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 :

affecter une fonction personnalisée à une cellule


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2007
    Messages
    293
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 293
    Par défaut affecter une fonction personnalisée à une cellule
    Bonjour,

    je bute sur un pb trés simple:
    je voudrais qu'une cellule fasse automatiquement le calcul qui est défini dans une macro dès qu'on change la valeur des cellules sources

    pour faire simple
    la fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Function carré(x)
    x = Sheets(1).Range("B2")
    a = Sheets(1).Range("B3")
    carré = x * x + a
     
    End Function
    doit s'appliquer à la cellule Sheets(1).Range("A1")

    si je fais : insertion fonctions personnalisé carré

    excel me renvoie un interface de selection que je ne comprends pas puis
    (VALEUR?) dans ma cellule

    donc au secours !!!

  2. #2
    Membre Expert Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    Bonjour,

    1) Change ta déclaration de fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Public Function carré() as long
    x = Sheets(1).Range("B2")
    a = Sheets(1).Range("B3")
    carré = x * x + a
    End Function
    NB : elle doit être dans un module

    2) Ensuite tu utilises l'icone pour les fonctions sur ta cellule, tu prends formules personnalisées, tu cherche ta carré() et hop.

    je n'ai pas compris pourquoi tu passe x en paramêtre alors qu'il est initialisé par ta fonction.

    De la manière dont tu l'as conçue, ta fonction ramène toujours le même résultat quel que soit l'endroit d'appel.

  3. #3
    Membre éclairé
    Inscrit en
    Novembre 2007
    Messages
    293
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 293
    Par défaut
    j' ai toujours la même chose

    c'est vraiment un pb d'affectation :

    je veux que la cellule A1 soit dépendante des cellules B1 et B2 au travers de la fonction "carré"

  4. #4
    Membre Expert Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    je veux que la cellule A1 soit dépendante des cellules B1 et B2 au travers de la fonction "carré"
    Dans ta fonction c'est B2 et B3.

    Chez moi cela fonction parfaitement.

    Avec B2 =5 et B3 = 6, j'ai en A1 via =Carré() la valeur 31.

    Cqfd.

  5. #5
    Membre éclairé
    Inscrit en
    Novembre 2007
    Messages
    293
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 293
    Par défaut
    excuse pour b1 etc

    ce que je comprends pas c'est que si je veux affecter une cellule à une fonction personnalisée excel me renvoie une interface :

    ( je sais pas comment te la montrer)

    dois y avoir un truc sur mon excel et je ne sais pas quoi

Discussions similaires

  1. Appel d'une fonction dans une fonction d'une même classe
    Par script73 dans le forum Général Python
    Réponses: 3
    Dernier message: 06/03/2015, 10h18
  2. [XL-2010] Ajout d'une description a une fonction personnalisée
    Par laaich dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/10/2012, 09h01
  3. #Erreur dans une requête avec une fonction personnalisée
    Par pguiheu dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 04/07/2006, 15h45
  4. Réponses: 3
    Dernier message: 16/01/2006, 16h02
  5. Réponses: 4
    Dernier message: 17/03/2004, 17h24

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