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 :

Récupérer les coefficients d'une régression polynomiale par macro


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 40
    Points : 42
    Points
    42
    Par défaut Récupérer les coefficients d'une régression polynomiale par macro
    Bonjour,

    J'ai un soucis, (logique sinon je serais pas la )


    J'essaie de réaliser une macro qui à un moment me donne les coefficients A, B et C d'une régression polynomiale d'ordre 2 (Ax²+Bx+C en simple).
    J'ai cherché un peu partout sur internet, en m'inspirant d'une solution sans macro, et en bidouillant avec l'enregistreur de macro je suis arrivé à la formule suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
         Range(Cells(nValeurInit, 5), Cells(nValeurInit + 2, 5)).FormulaArray = _
            "=LINEST(R[1]c-2:r[10]c-2,r[1]c-3:R[10]C-3^{1\2},TRUE,TRUE)"
    qui ne marche pas XD !!!! j'ai une erreur qui dit: Imposible de définir la propriété formularray de la classe range, sauf que avec la formule de départ donnée par l'enregistreur je peux mettre range(NNN).formulaarray=.... et ca marche

    si quelqu'un aurais l'extrême obligeance de me dépatouiller une idée qui fonctionne mieux ce serait très gentil ;-)

    Merci
    j'ai mis le fichier exemple sur lequel je fais mes tests ci-dessous:
    Fichiers attachés Fichiers attachés

  2. #2
    Membre expert
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2 267
    Points : 3 663
    Points
    3 663
    Par défaut
    Bonjour,

    C'est quoi ce micmac que tu as fait dans les références ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        Range(Cells(nValeurInit, 5), Cells(nValeurInit + 2, 5)).FormulaArray = _
            "=LINEST(R[1]C2:R[10]C2,R[1]C1:R[10]C1^{1,2},TRUE,TRUE)"
    fonctionne mais est-ce ce que tu voulais (?)

    eric

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 40
    Points : 42
    Points
    42
    Par défaut
    Salut et merci, le seul soucis c'est que j'ai remarqué que les colonnes et lignes étaient relatives en position à la première case, donc si mes colonnes sont à gauche comment je met un moins??

    C[-1]? mais ca ne marche pas

  4. #4
    Membre expert
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2 267
    Points : 3 663
    Points
    3 663
    Par défaut
    Pourquoi mettre en relatif ? Tes données sont en A et B, tu dois être en absolu colonne si tu es amené à copier la formule vers la droite.
    Ceci dit R[1]C2 est absolu colonne B, R[1]C[-2] est relatif (par rapport à la cellule de la formule !) 2 colonne à gauche.
    R[1]C-2 tel que tu l'avais écrit n'a pas de sens.

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 40
    Points : 42
    Points
    42
    Par défaut
    Merci, j'ai fini par comprendre (surtout grâce aux explications) et désolé pour le délais de réponse!

    solution trouvée

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/09/2014, 16h05
  2. récupérer les champs d'une autre table par jointure
    Par dominos dans le forum Requêtes
    Réponses: 5
    Dernier message: 17/12/2013, 13h06
  3. [AC-2003] récupérer les valeur d'une textbox ligne par ligne
    Par 0sef40 dans le forum VBA Access
    Réponses: 5
    Dernier message: 07/06/2011, 09h22
  4. Récupérer les coefficients d'une regression
    Par ErwanLegrand dans le forum SAS STAT
    Réponses: 1
    Dernier message: 07/06/2010, 22h10
  5. Réponses: 5
    Dernier message: 22/02/2006, 17h32

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