Excel formules très compliquées
Résolu
KOMENCAMARCHE00
Messages postés
26
Date d'inscription
Statut
Membre
Dernière intervention
-
KOMENCAMARCHE00 Messages postés 26 Date d'inscription Statut Membre Dernière intervention -
KOMENCAMARCHE00 Messages postés 26 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
comment
modifier une feuille de calculs très compliqués en macro sans avoir à tout retaper?
est ce possible de convertir une feuille de calculs en macro ou de faire exécuter ces formulés par une macro?
Merci
comment
modifier une feuille de calculs très compliqués en macro sans avoir à tout retaper?
est ce possible de convertir une feuille de calculs en macro ou de faire exécuter ces formulés par une macro?
Merci
A voir également:
- Excel formules très compliquées
- Liste déroulante excel - Guide
- Formule si et excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Word et excel gratuit - Guide
- Formules - Télécharger - Études & Formations
8 réponses
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.
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
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?
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é
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
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
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
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
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
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