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 :

problème avec une fonction utilisé en tant que formule


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 8
    Points : 8
    Points
    8
    Par défaut problème avec une fonction utilisé en tant que formule
    Salut,
    Je suis entrain de faire un classeur de simulation. Pour cela je doit calculer une cellule en fonction des résultats d'une autre feuille.
    J'ai réalisé une macro pour réaliser cela. Elle fonctionne sans erreur lorsque je la test avec une procédure "test" mais dès que je l'utilise dans une formule le code plante après
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Range("H6") = ortFacette
    sans émettre de code d'erreur et insère "#VALEUR" dans la cellule.

    Quelqu'un aurait une solution?

    Merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    Public Function testCalculCr(nLigne As Integer) As Double
     
        Dim cell As Range
        Dim feuillePoutre As Worksheet
        Set feuillePoutre = Worksheets("calcul de poutre")
        Set cell = Worksheets("calcul d'une portion de came").Range("F" & nLigne)
        testCalculCr = calculCr(cell, feuillePoutre)
     
    End Function
     
    Public Function calculCr(ByVal cellCourrante As Range, ByRef feuillePoutre As Worksheet) As Double
     
        Dim nbligne As Integer
        Dim valCr As Double
        Dim ortFacette As Double
        Dim Flobjectif As Double, alpha As Double, Lreelle As Double
        Dim Flcourant As Double, effortCourant
        Dim i As Integer
     
        'Worksheets("calcul de poutre").Select
        'Dim feuillePoutre As Worksheet
        'Set feuillePoutre = Worksheets("calcul de poutre")
     
     
        ortFacette = cellCourrante.Offset(0, 7).Value
     
        'initialisation du calcul
        With feuillePoutre
            .Range("H6") = ortFacette
            Flobjectif = .Range("H7")
        End With
     
        effortCourant = 1
        i = 0
     
        Do
            With feuillePoutre
               .Range("D9") = effortCourant
               Flcourant = .Range("H12")
            End With
            effortCourant = effortCourant + (Flobjectif - Flcourant) / Math.Abs((Flobjectif - Flcourant)) * 0.5
            i = i + 1
        Loop While (Math.Abs((Flobjectif - Flcourant)) > 10 ^ -1) Or i > 1000
     
        calculCr = feuillePoutre.Range("H13")
     
    End Function

  2. #2
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut

    Attention, à partir d'une formule, tu ne peux pas modifier le contenu d'une cellule autre que celle qui contient la formule.

    Si par exemple tu mets ta formule dans la cellule B17, seule le contenu de B17 changera lorsque ta formule renverra une valeur. Tu ne peux pas changer le contenu de B18 par exemple.

    ++
    Qwaz

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 8
    Points : 8
    Points
    8
    Par défaut
    Merci, c'est dommage d'avoir cette limitation...
    Je vais penser différemment ma résolution...

    Merci
    Alex

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

Discussions similaires

  1. Probléme avec une fonction que j'ai créé.
    Par yann123456 dans le forum Langage
    Réponses: 6
    Dernier message: 06/02/2009, 16h05
  2. problème avec une fonction javaScript
    Par volthur dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/05/2006, 18h04
  3. Problème avec une fonction utilisateur !
    Par nalou dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 20/04/2006, 17h06
  4. Problème avec une fonction et un array
    Par Neal Morse dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 28/08/2005, 12h04
  5. Problème avec une fonction date.
    Par kmayoyota dans le forum ASP
    Réponses: 8
    Dernier message: 09/09/2004, 12h33

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