Macro excel pour recalculer une référence cir
Résolu/Fermé
Olilius
Messages postés
9
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
15 avril 2009
-
21 nov. 2007 à 10:57
jo360 - 16 juin 2008 à 08:52
jo360 - 16 juin 2008 à 08:52
A voir également:
- Macro excel pour recalculer une référence cir
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Déplacer une colonne excel - Guide
- Word et excel gratuit - Guide
- Formule excel pour additionner plusieurs cellules - Guide
7 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 718
21 nov. 2007 à 18:48
21 nov. 2007 à 18:48
bonjour
Ce n'est pas à proprement parler un bug d'excel, le fait que cela fonctionne est plutôt un miracle et ce n'est pas du tout sûr que cela donne toujours le bon résultat.
Pour que la macro s'applique sur une autre feuille, il suffit de qualifier les références sheets("feullex").objet
Par contre une macro qui modifie des cellules sur une feuille protégée ne fonctionne pas il faut penser à dé-protéger puis remettre la protection.
Ce n'est pas à proprement parler un bug d'excel, le fait que cela fonctionne est plutôt un miracle et ce n'est pas du tout sûr que cela donne toujours le bon résultat.
Pour que la macro s'applique sur une autre feuille, il suffit de qualifier les références sheets("feullex").objet
Par contre une macro qui modifie des cellules sur une feuille protégée ne fonctionne pas il faut penser à dé-protéger puis remettre la protection.
Olilius
Messages postés
9
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
15 avril 2009
21 nov. 2007 à 22:43
21 nov. 2007 à 22:43
Bonsoir,
Merci pour l'info, mon code est bon maintenant.
Par contre, je ne comprends pas pourquoi tu parles de "miracle" et de l'incertitude quant au bon résultat.
Ma fonction est obligatoirement circulaire, et j'ai mis le nombre d'itération sur 100.
- Pourquoi le résultat n'est-il pas certain ?
- Ai-je plus de chance avec 1000 itérations par exemple ?
- Sais-tu pourquoi parfois excel n'arrive pas à faire le calcul et pourquoi parfois ça marche ?
Merci si tu as des infos, j'aimerai bien comprendre
Olivier
Merci pour l'info, mon code est bon maintenant.
Par contre, je ne comprends pas pourquoi tu parles de "miracle" et de l'incertitude quant au bon résultat.
Ma fonction est obligatoirement circulaire, et j'ai mis le nombre d'itération sur 100.
- Pourquoi le résultat n'est-il pas certain ?
- Ai-je plus de chance avec 1000 itérations par exemple ?
- Sais-tu pourquoi parfois excel n'arrive pas à faire le calcul et pourquoi parfois ça marche ?
Merci si tu as des infos, j'aimerai bien comprendre
Olivier
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 718
21 nov. 2007 à 23:33
21 nov. 2007 à 23:33
bonjour
Cela dépend de la complexité de tes formules et du degré de précision souhaité mais comme elles sont calculées avec des approximations il est normal qu'il y ait des écarts. D'autre part la moindre anomalie de paramétrage d'une formule risque de fausser le résultat amplifié avec les itérations. Essaie de monter des formules qui vérifient tout simplement une facturation avec multiplications, ajout de taxes, application de remises et bien sûr arrondi au centime d'euro : ce qui donne le même résultat sur une facture sera incorrect la fois suivante et parfois de façon importante si les calculs sont assez nombreux.
Si tu augmentes les itérations le résultat est plus fin mais les temps de calculs augmentent.
L'ordre des calculs effectués n'est pas le même systématiquement en fonction de l'élément déclencheur et donc dans certains cas il y a des incohérences non résolues provoquant le blocage.
Certains calculs effectivement ne peuvent être réalisés que par itération mais même en les réalisant avec des modules spécialement conçus, on n'arrive pas toujours à un résultat strictement identique. Il est parfois impossible, même pour certains calculs très utilisés au quotidien, de vérifier le résultat obtenu car le contrôle fait sur un autre applicatif ne donnera pas exactement le résultat identique. Comme avec un tableur tu utilises des itérations banalisées et pas totalement appropriées à chaque cas les boucles sont parfois incohérentes.
Ce n'est pas toujours facile de contrôler les formules mais avec des références circulaires comment être sûr de leur écriture ?
Cela dépend de la complexité de tes formules et du degré de précision souhaité mais comme elles sont calculées avec des approximations il est normal qu'il y ait des écarts. D'autre part la moindre anomalie de paramétrage d'une formule risque de fausser le résultat amplifié avec les itérations. Essaie de monter des formules qui vérifient tout simplement une facturation avec multiplications, ajout de taxes, application de remises et bien sûr arrondi au centime d'euro : ce qui donne le même résultat sur une facture sera incorrect la fois suivante et parfois de façon importante si les calculs sont assez nombreux.
Si tu augmentes les itérations le résultat est plus fin mais les temps de calculs augmentent.
L'ordre des calculs effectués n'est pas le même systématiquement en fonction de l'élément déclencheur et donc dans certains cas il y a des incohérences non résolues provoquant le blocage.
Certains calculs effectivement ne peuvent être réalisés que par itération mais même en les réalisant avec des modules spécialement conçus, on n'arrive pas toujours à un résultat strictement identique. Il est parfois impossible, même pour certains calculs très utilisés au quotidien, de vérifier le résultat obtenu car le contrôle fait sur un autre applicatif ne donnera pas exactement le résultat identique. Comme avec un tableur tu utilises des itérations banalisées et pas totalement appropriées à chaque cas les boucles sont parfois incohérentes.
Ce n'est pas toujours facile de contrôler les formules mais avec des références circulaires comment être sûr de leur écriture ?
Olilius
Messages postés
9
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
15 avril 2009
22 nov. 2007 à 20:02
22 nov. 2007 à 20:02
Merci pour ta réponse.
Je peux controler ainsi :
1) mon calcul à partir des recettes, dépenses, j'ai le calcul de la TVA, les cotisations, et le revenu net.
2) mes réf circulaires c'est je veux un revenu de x euros, combien de recettes ?
En faisant mettant les résultats "naturels" du 1) dans le 2), j'ai une marge d'erreur de 0.01 à 1% selon différents critères.
Bonne soirée
Olivier
Je peux controler ainsi :
1) mon calcul à partir des recettes, dépenses, j'ai le calcul de la TVA, les cotisations, et le revenu net.
2) mes réf circulaires c'est je veux un revenu de x euros, combien de recettes ?
En faisant mettant les résultats "naturels" du 1) dans le 2), j'ai une marge d'erreur de 0.01 à 1% selon différents critères.
Bonne soirée
Olivier
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 718
22 nov. 2007 à 20:48
22 nov. 2007 à 20:48
bonjour
Merci de ces précisions et c'est effectivement une utilisation intéressante du tableur.
As-tu essayé de réaliser ton calcul avec le solveur (menu outils / solveur) qui me semble adapté à ton problème ?
Merci de ces précisions et c'est effectivement une utilisation intéressante du tableur.
As-tu essayé de réaliser ton calcul avec le solveur (menu outils / solveur) qui me semble adapté à ton problème ?
Olilius
Messages postés
9
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
15 avril 2009
26 nov. 2007 à 14:08
26 nov. 2007 à 14:08
Non, je ne connaissais pas. J'ai installé la macro complémentaire et je vais regarder de près.
Merci beaucoup pour tes infos
Cordialement
Olivier
Merci beaucoup pour tes infos
Cordialement
Olivier