VBA - Virgule manquante dans m et b l'équation de droite
Fermé
Chips
-
15 avril 2016 à 10:53
Pierre1310 Messages postés 8554 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020 - 15 avril 2016 à 16:19
Pierre1310 Messages postés 8554 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020 - 15 avril 2016 à 16:19
A voir également:
- VBA - Virgule manquante dans m et b l'équation de droite
- Vba l'indice n'appartient pas à la sélection - Forum VB / VBA
- Incompatibilité de type vba ✓ - Forum Programmation
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
- Vba range avec variable ✓ - Forum VB / VBA
- Barre droite clavier - Forum Windows
4 réponses
Pierre1310
Messages postés
8554
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
645
15 avril 2016 à 10:58
15 avril 2016 à 10:58
Bonjour,
Modifies le format de cellule tout simplement.
Modifies le format de cellule tout simplement.
Bonjour Pierre, et merci de ta réponse
J'ai essayé mais ça ne fonctionne pas, le soucis c'est que plutôt que de récupérer 48.777 par exemple je me retrouve avec 48777, si je change le format il m'affiche 48777.000 et il est pris en compte comme ça dans les calculs suivant ce qui change considérablement mes résultats
J'ai essayé mais ça ne fonctionne pas, le soucis c'est que plutôt que de récupérer 48.777 par exemple je me retrouve avec 48777, si je change le format il m'affiche 48777.000 et il est pris en compte comme ça dans les calculs suivant ce qui change considérablement mes résultats
Pierre1310
Messages postés
8554
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
645
15 avril 2016 à 11:41
15 avril 2016 à 11:41
Dim Equation
C'est pas bon, il faut que tu fasse
Dim Equation as double
Pierre1310
Messages postés
8554
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
645
Modifié par Pierre1310 le 15/04/2016 à 12:08
Modifié par Pierre1310 le 15/04/2016 à 12:08
Tu te sers de combien de cellule de tableau?
J'en vois 4 donc
Oublie pas que tu peux te servir du 0
J'en vois 4 donc
Dim Equation(4) as double
Oublie pas que tu peux te servir du 0
Chips
>
Pierre1310
Messages postés
8554
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
15 avril 2016 à 12:07
15 avril 2016 à 12:07
C'est à dire ? Pour afficher ?
Pierre1310
Messages postés
8554
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
645
15 avril 2016 à 12:08
15 avril 2016 à 12:08
Dans ton code tu utilise Equation(1) à Equation(4)
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 215
Modifié par eriiic le 15/04/2016 à 12:47
Modifié par eriiic le 15/04/2016 à 12:47
Bonjour,
pourquoi t'embêter à récupérer l'équation sur le graphique ?
Tu as DROITEREG() pour ça.
Application.LinEst() en VBA mais si le but est de mettre m et b dans une cellule pas besoin de vba.
ou bien PENTE() et ORDONNEE.ORIGINE() si tu préfères à une matrice (m,b).
Et si le but est d'interpoler tu as Tendance() ou Application.Trend() pour l'avoir directement.
eric
edit: remplacé COEFFICIENT.CORRELATION par ORDONNEE.ORIGINE
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
pourquoi t'embêter à récupérer l'équation sur le graphique ?
Tu as DROITEREG() pour ça.
Application.LinEst() en VBA mais si le but est de mettre m et b dans une cellule pas besoin de vba.
ou bien PENTE() et ORDONNEE.ORIGINE() si tu préfères à une matrice (m,b).
Et si le but est d'interpoler tu as Tendance() ou Application.Trend() pour l'avoir directement.
eric
edit: remplacé COEFFICIENT.CORRELATION par ORDONNEE.ORIGINE
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 215
15 avril 2016 à 13:02
15 avril 2016 à 13:02
Ben il faut utiliser ton tableau de points qui t'ont servi à tracer ta courbe.
Regarde l'aide excel sur ces fonctions, elle est très bien faite.
Et quand tu mets :
C'est une chaine, pas un numérique. Qui en plus ne prend pas en compte ton séparateur décimal selon le cas.
Essaie avec :
Sinon sans fichier...
Regarde l'aide excel sur ces fonctions, elle est très bien faite.
Et quand tu mets :
Range("E21").Value = Left(Equation(2), Len(Equation(2)) - 1)
C'est une chaine, pas un numérique. Qui en plus ne prend pas en compte ton séparateur décimal selon le cas.
Essaie avec :
CDbl(Range("E21").Value = Left(Equation(2), Len(Equation(2)) - 1))
Sinon sans fichier...
Chiiiiips
Messages postés
11
Date d'inscription
vendredi 15 avril 2016
Statut
Membre
Dernière intervention
15 avril 2016
15 avril 2016 à 14:42
15 avril 2016 à 14:42
ça ne marche pas non plus tant pis merci des conseils
On ne peut pas mettre de fichier sur ce forum si ?
On ne peut pas mettre de fichier sur ce forum si ?
Pierre1310
Messages postés
8554
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
645
15 avril 2016 à 14:43
15 avril 2016 à 14:43
Vas sur le site cijoint.com et colle le lien.
Chiiiiips
Messages postés
11
Date d'inscription
vendredi 15 avril 2016
Statut
Membre
Dernière intervention
15 avril 2016
15 avril 2016 à 14:52
15 avril 2016 à 14:52
Merci, voilà le fichier
https://www.cjoint.com/c/FDpmZicWj2g
https://www.cjoint.com/c/FDpmZicWj2g
ccm81
Messages postés
10855
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
29 avril 2024
2 404
Modifié par ccm81 le 15/04/2016 à 15:35
Modifié par ccm81 le 15/04/2016 à 15:35
Bonjour à tous
Pour récupérer l'équation de la droite de régression (données source en A2:B12) via vba en A15:B15, tu peux faire plus simple
Cdlmn
Pour récupérer l'équation de la droite de régression (données source en A2:B12) via vba en A15:B15, tu peux faire plus simple
Dim f As String, plage As String, m As Double, b As Double
plage = "B2:B12,A2:A12"
f = "=LINEST(" & plage & ")"
' met pente et ordonnée à l'origine en A15 et B15
Range("A15:B15").FormulaArray = f
' récupère la pente et l'ordonnée à l'origine (pas utile bien sûr
m = Range("A15").Value
b = Range("B15").Value
Cdlmn
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 215
15 avril 2016 à 15:57
15 avril 2016 à 15:57
Pourquoi faire simple quand on peut faire compliqué ? ;-)
Déjà rejeté : https://forums.commentcamarche.net/forum/affich-33405133-vba-virgule-manquante-dans-m-et-b-l-equation-de-droite#9
Déjà rejeté : https://forums.commentcamarche.net/forum/affich-33405133-vba-virgule-manquante-dans-m-et-b-l-equation-de-droite#9
Chiiiiips
Messages postés
11
Date d'inscription
vendredi 15 avril 2016
Statut
Membre
Dernière intervention
15 avril 2016
15 avril 2016 à 16:01
15 avril 2016 à 16:01
Mais c'est gentil du conseil, j'essayerais cette méthode la prochaine fois c'est vrai qu'elle à l'air bien plus rapide :)