Excel formules très compliquées
Résolu/Fermé
KOMENCAMARCHE00
Messages postés
26
Date d'inscription
mardi 8 novembre 2011
Statut
Membre
Dernière intervention
10 novembre 2011
-
9 nov. 2011 à 23:06
KOMENCAMARCHE00 Messages postés 26 Date d'inscription mardi 8 novembre 2011 Statut Membre Dernière intervention 10 novembre 2011 - 10 nov. 2011 à 14:14
KOMENCAMARCHE00 Messages postés 26 Date d'inscription mardi 8 novembre 2011 Statut Membre Dernière intervention 10 novembre 2011 - 10 nov. 2011 à 14:14
A voir également:
- Excel formules très compliquées
- Liste déroulante excel - Guide
- Formule excel pour additionner plusieurs cellules - Guide
- Formule excel si et - Guide
- Formules excel de base - Guide
- Formule excel moyenne - Guide
8 réponses
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
10 nov. 2011 à 09:21
10 nov. 2011 à 09:21
Bonjour,
Et si tu expliquais (clairement et complètement) ce que tu as et ce que tu veux ?
eric
Et si tu expliquais (clairement et complètement) ce que tu as et ce que tu veux ?
eric
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 753
10 nov. 2011 à 09:36
10 nov. 2011 à 09:36
Salut Eriic,
Il s'agit de la suite de ce sujet...
Ne pas tout relire, juste le message permalink 23.
Je reste ici en cas de besoin.
Il s'agit de la suite de ce sujet...
Ne pas tout relire, juste le message permalink 23.
Je reste ici en cas de besoin.
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
10 nov. 2011 à 09:49
10 nov. 2011 à 09:49
Ok, ben c'est pas plus clair là bas... ;-)
Pour info pour le demandeur, on peut faire des fonctions personnalisées en vba.
Donner le nom voulu pour la fonction, les variables d'entrées et la formule pour fournir le résultat en sortie.
Ca permet d'accélérer et d'alléger un tableau, ainsi que de simplifier la saisie et la lecture.
@+
eric
Pour info pour le demandeur, on peut faire des fonctions personnalisées en vba.
Donner le nom voulu pour la fonction, les variables d'entrées et la formule pour fournir le résultat en sortie.
Ca permet d'accélérer et d'alléger un tableau, ainsi que de simplifier la saisie et la lecture.
@+
eric
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 753
10 nov. 2011 à 10:27
10 nov. 2011 à 10:27
Si vous le voulez on va continuer ici.......
Il faut que tu sois simple dans tes explications, je ne suis pas ingénieur en aérospaciale et donc moi, tous tes trucs Einsteiniens, je risque de ne pas les comprendre. Eriiic peut être mais moi pas!
Bon pour être simple, voici ce dont nous avons besoin.
Exemple :
En colonne A, j'ai des nombres à 5 chiffres après la virgule,
En Colonne B, j'ai des nombres entiers de 1 à 9999,
En colonne C, un pourcentage à 2 chiffres après la virgule,
En Colonne D, un chiffre entre -9 et 9,
En Colonne E, la formule =(A*B)+C
Je souhaites obtenir en colonne F, par macro, à chaque changement d'une donnée dans les colonnes A, B, C, D, le résultat de la formule :
=((A/(B*C))+Ln(E)*10^4-Exp(A*D))*k ou k = 1,61803399 * pi
Là c'est clair. En tout cas pour moi...
Ok?
Il faut que tu sois simple dans tes explications, je ne suis pas ingénieur en aérospaciale et donc moi, tous tes trucs Einsteiniens, je risque de ne pas les comprendre. Eriiic peut être mais moi pas!
Bon pour être simple, voici ce dont nous avons besoin.
Exemple :
En colonne A, j'ai des nombres à 5 chiffres après la virgule,
En Colonne B, j'ai des nombres entiers de 1 à 9999,
En colonne C, un pourcentage à 2 chiffres après la virgule,
En Colonne D, un chiffre entre -9 et 9,
En Colonne E, la formule =(A*B)+C
Je souhaites obtenir en colonne F, par macro, à chaque changement d'une donnée dans les colonnes A, B, C, D, le résultat de la formule :
=((A/(B*C))+Ln(E)*10^4-Exp(A*D))*k ou k = 1,61803399 * pi
Là c'est clair. En tout cas pour moi...
Ok?
KOMENCAMARCHE00
Messages postés
26
Date d'inscription
mardi 8 novembre 2011
Statut
Membre
Dernière intervention
10 novembre 2011
10 nov. 2011 à 10:50
10 nov. 2011 à 10:50
Le hic c'est que si je te fait ça avec toutes mes formules, je te fais trois pages, on va donc partir du principe de base et si je te comprends pour ça, je l'appliquerai au reste:
Je défini par n'importe quel nombre:
I6
I7
I12
I13
J8=RACINE((PUISSANCE(I6;2)+PUISSANCE(I7;2)))
J14=RACINE((PUISSANCE(I12;2)+PUISSANCE(I13;2)))
K6=I6+J8
K7=I7+J8
K12=I12+J14
K13=I13+J14
J8=RACINE((PUISSANCE(K6;2)+PUISSANCE(K7;2)))
J14=RACINE((PUISSANCE(K12;2)+PUISSANCE(K13;2)))
En gros
Ma feuille de calculs en contient des tonnes.... est il possible de les convertir en macro sans tout retaper ou de faire une macro reprenant ces formules telles quel le but étant de ne pas tout retaper en VBA
C'est mieux là, non?
Plus simple sera compliqué
Je défini par n'importe quel nombre:
I6
I7
I12
I13
J8=RACINE((PUISSANCE(I6;2)+PUISSANCE(I7;2)))
J14=RACINE((PUISSANCE(I12;2)+PUISSANCE(I13;2)))
K6=I6+J8
K7=I7+J8
K12=I12+J14
K13=I13+J14
J8=RACINE((PUISSANCE(K6;2)+PUISSANCE(K7;2)))
J14=RACINE((PUISSANCE(K12;2)+PUISSANCE(K13;2)))
En gros
Ma feuille de calculs en contient des tonnes.... est il possible de les convertir en macro sans tout retaper ou de faire une macro reprenant ces formules telles quel le but étant de ne pas tout retaper en VBA
C'est mieux là, non?
Plus simple sera compliqué
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
Modifié par eriiic le 10/11/2011 à 10:58
Modifié par eriiic le 10/11/2011 à 10:58
Re,
Si tu pouvais déposer un fichier exemple sur cjoint.com et coller le lien ici (avec le résultat attendu...).
Ca a l'air d'un calcul récursif.
Si c'est ça (assez complexe et pas de garantie d'y arriver ;-) ) quelle est la condition de sortie ?
Sinon, te faut-il tous les résultats intermédiaires, et combien de calculs successifs ?
eric
Si tu pouvais déposer un fichier exemple sur cjoint.com et coller le lien ici (avec le résultat attendu...).
Ca a l'air d'un calcul récursif.
Si c'est ça (assez complexe et pas de garantie d'y arriver ;-) ) quelle est la condition de sortie ?
Sinon, te faut-il tous les résultats intermédiaires, et combien de calculs successifs ?
eric
KOMENCAMARCHE00
Messages postés
26
Date d'inscription
mardi 8 novembre 2011
Statut
Membre
Dernière intervention
10 novembre 2011
10 nov. 2011 à 11:09
10 nov. 2011 à 11:09
s'il y a un maximum de calculs successifs, je suis preneur
pour l'instant je me sert des résultats intermédiaires (vitesses et accélérations sur x et y) pour les afficher en graphique mais je ne suis pas borné.
Merci
pour l'instant je me sert des résultats intermédiaires (vitesses et accélérations sur x et y) pour les afficher en graphique mais je ne suis pas borné.
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
KOMENCAMARCHE00
Messages postés
26
Date d'inscription
mardi 8 novembre 2011
Statut
Membre
Dernière intervention
10 novembre 2011
10 nov. 2011 à 11:05
10 nov. 2011 à 11:05
S'agissant du calcul de trajectoires de deux corps A et B en partant de leurs masses, de leurs positions en x et y de départ (en gros: I6;I7;I12;I13) et de leurs vitesses initiales pour calculer les nouvelles position en x et y (K6;K7;K12;K13) la condition de sortie pourra être complètement arbitraire (pourquoi pas la fin de la ligne sur excel 2010 par exemple?)
Cordialement
Cordialement
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
10 nov. 2011 à 11:43
10 nov. 2011 à 11:43
Les résultats intermédiaires sont toujours en J8, J14 et sont écrasés par le calcul suivant, c'est ça ?
Donc ils ne te servent pas et on peut s'abstenir de les mettre sur la feuille. D'accord ?
Sinon on peut tous les mettre mais plutôt en I8, i14, puis J8,J14, puis K8, K14, etc.
Cette irrégularité avec une colonne sautée me perturbe.
Je répète : Si tu pouvais déposer un fichier exemple sur cjoint.com et coller le lien ici
Sinon on va faire à notre idée et la position de cellules ne conviendra peut-être pas à ton projet.
eric
Donc ils ne te servent pas et on peut s'abstenir de les mettre sur la feuille. D'accord ?
Sinon on peut tous les mettre mais plutôt en I8, i14, puis J8,J14, puis K8, K14, etc.
Cette irrégularité avec une colonne sautée me perturbe.
Je répète : Si tu pouvais déposer un fichier exemple sur cjoint.com et coller le lien ici
Sinon on va faire à notre idée et la position de cellules ne conviendra peut-être pas à ton projet.
eric
KOMENCAMARCHE00
Messages postés
26
Date d'inscription
mardi 8 novembre 2011
Statut
Membre
Dernière intervention
10 novembre 2011
10 nov. 2011 à 11:58
10 nov. 2011 à 11:58
Je suis plutôt d'accord pour ta solution de les mettre dans la colonne suivante sinon, je suis preneur de toute disposition qui pourra être plus pratique mais je préfère les garder
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
10 nov. 2011 à 12:17
10 nov. 2011 à 12:17
Et il n'y a qu'un seul couple à calculer ?
S'il y en a d'autres où sont-ils ? Nombre fixe ou variable ?
S'il y en a d'autres où sont-ils ? Nombre fixe ou variable ?
KOMENCAMARCHE00
Messages postés
26
Date d'inscription
mardi 8 novembre 2011
Statut
Membre
Dernière intervention
10 novembre 2011
10 nov. 2011 à 12:29
10 nov. 2011 à 12:29
Pour comprendre le principe je voudrais juste avoir les lignes VBA pour les relations que j'ai donné.
A part
I6
I7
I12
I13
fixés au début tout le reste est calculé et donc variable si je comprends bien ta question
A part
I6
I7
I12
I13
fixés au début tout le reste est calculé et donc variable si je comprends bien ta question
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
10 nov. 2011 à 13:32
10 nov. 2011 à 13:32
Re,
Regarde si ça va :
Je te laisse contrôler les calculs sur qcq exemples.
Comme tu es avare de détails et pour fournir un exemple, selon les conditions de départ on obtient un overflow assez rapidement que tu devrais pouvoir régler.
eric
Regarde si ça va :
Sub calcul() Dim nbcol As Long, col As Long nbcol = Application.InputBox("Nombre de calculs voulus : ", Type:=1) If nbcol < 1 Then MsgBox ("nombre non valide") Else Application.ScreenUpdating = False ' nettoyage [J6].Resize(2, Columns.Count - 9).ClearContents [J12].Resize(2, Columns.Count - 9).ClearContents For col = 10 To WorksheetFunction.Min(nbcol, Columns.Count - 10) + 9 Cells(8, col) = Sqr(Cells(6, col - 1)) ^ 2 + (Cells(7, col - 1) ^ 2) Cells(14, col) = Sqr(Cells(12, col - 1)) ^ 2 + (Cells(13, col - 1) ^ 2) ' Cells(6, col) = Cells(6, col - 1) + Cells(8, col) Cells(7, col) = Cells(7, col - 1) + Cells(8, col) Cells(12, col) = Cells(12, col - 1) + Cells(14, col) Cells(13, col) = Cells(13, col - 1) + Cells(14, col) Next col Application.ScreenUpdating = True End If End Sub
Je te laisse contrôler les calculs sur qcq exemples.
Comme tu es avare de détails et pour fournir un exemple, selon les conditions de départ on obtient un overflow assez rapidement que tu devrais pouvoir régler.
eric
KOMENCAMARCHE00
Messages postés
26
Date d'inscription
mardi 8 novembre 2011
Statut
Membre
Dernière intervention
10 novembre 2011
10 nov. 2011 à 14:14
10 nov. 2011 à 14:14
C'est exactement la base qu'il me fallait merci beaucoup