Afficher la formule d'une cellule
Fermé
Enimation
-
Modifié le 14 nov. 2018 à 10:03
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 - 16 nov. 2018 à 03:16
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 - 16 nov. 2018 à 03:16
A voir également:
- Afficher la formule d'une cellule
- Formule excel pour additionner plusieurs cellules - Guide
- Formule si et - Guide
- Aller à la ligne dans une cellule excel - Guide
- Verrouiller une cellule excel dans une formule - Guide
- Formule excel moyenne - Guide
4 réponses
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
14 nov. 2018 à 10:09
14 nov. 2018 à 10:09
Bonjour,
formule en D1:
="=("&A1&"*"&B1&")+("&B1&"-"&A1&")"
formule en D1:
="=("&A1&"*"&B1&")+("&B1&"-"&A1&")"
je veux utiliser des formules automatique pour un calcule de métré l’équation peut varier d'une cellule a autre et la saisie manuelle des opération prendrai énormément de temps
fabien25000
Messages postés
673
Date d'inscription
mercredi 5 octobre 2016
Statut
Membre
Dernière intervention
28 juillet 2022
59
Modifié le 14 nov. 2018 à 10:47
Modifié le 14 nov. 2018 à 10:47
Bonjour,
c'est une question récurrente..
voir ici pour différentes solutions à adapter
c'est une question récurrente..
voir ici pour différentes solutions à adapter
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
858
16 nov. 2018 à 03:16
16 nov. 2018 à 03:16
Bonjour à tous,
La question du remplacement des références par leurs valeurs dans une formule est délicate.
Il n'y a pas dans le modèle de données Excel, dans la classe Range, de propriété qui retourne l'ensemble de tous les précédents d'une formule.
Il existe bien Precedent et DirectPrecedent qui retournent un range des cellules appelées par la formule dans la feuille de calcul mais ça ne fonctionne que dans une procédure, pas dans une fonction.
Sur le net tu trouveras des solutions à base de parser de formules ou qui utilisent NavigateArrow()
Regarde https://colinlegg.wordpress.com/2014/01/14/vba-determine-all-precedent-cells-a-nice-example-of-recursion/
Si tes formules ne font des appels que dans la même feuille et que tu peux te satisfaire d'une procédure, regarde la pièce jointe, je t'ai écrit un bout de code qui peut te donner des idées.
Tu sélectionnes une ou des cellules contenant une formule (colonne C), tu lances la macro et tu obtiens le résultat dans la cellule à droite (colonne D).
Tu auras intérêt à effacer la colonne D avant de lancer la macro, si tu veux voir quelque chose.
https://www.cjoint.com/c/HKqcmgNTcNx
Cordialement
La question du remplacement des références par leurs valeurs dans une formule est délicate.
Il n'y a pas dans le modèle de données Excel, dans la classe Range, de propriété qui retourne l'ensemble de tous les précédents d'une formule.
Il existe bien Precedent et DirectPrecedent qui retournent un range des cellules appelées par la formule dans la feuille de calcul mais ça ne fonctionne que dans une procédure, pas dans une fonction.
Sur le net tu trouveras des solutions à base de parser de formules ou qui utilisent NavigateArrow()
Regarde https://colinlegg.wordpress.com/2014/01/14/vba-determine-all-precedent-cells-a-nice-example-of-recursion/
Si tes formules ne font des appels que dans la même feuille et que tu peux te satisfaire d'une procédure, regarde la pièce jointe, je t'ai écrit un bout de code qui peut te donner des idées.
Tu sélectionnes une ou des cellules contenant une formule (colonne C), tu lances la macro et tu obtiens le résultat dans la cellule à droite (colonne D).
Tu auras intérêt à effacer la colonne D avant de lancer la macro, si tu veux voir quelque chose.
https://www.cjoint.com/c/HKqcmgNTcNx
Cordialement