Afficher le contenu d'une cellule excel [Fermé]

Signaler
-
 B.api -
Bonjour,

Je recherche un truc tout bête :

je voudrais afficher le détail de mes operations dans mes cellules avec le resultat dans la cellule d'a coté.

J'ai essayé de faire une macro mais je ne suis pas doué.

merci d'avance

25 réponses

Messages postés
23461
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020
6 330
Bonjour,

Tu veux à tout prix une macro ?
Sinon imaginons tes formules en A2:A5, tu les selectionnes, copier, selectionner B2, collage special 'valeurs'
Ensuite dans "outils / options" onglet affichage tu coches 'formules'
en A2:A5 tes formules
en B2:B5 les résultats

eric
12
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 61024 internautes nous ont dit merci ce mois-ci

Le post semble date mais voyant qu'aucune solution n'a ete apportees, je me permets.

- Appuyer sur Alt + F11 (rentrer dans lediteur de macros)
- Insert -> Module
- Copier dans la page qui s'ouvre :

Function DisplayFormula(cel As Range)
DisplayFormula = cel.Formula
End Function

On vient de creer une nouvelle fonction, ensuite dans la feuille excel, on fait =DisplayFormula("celluleVoulue") et ca donnera un resultat.

Cordialement.
Merci cela fonctionne parfaitement !
exemple (pour bien comprendre pour les novices comme moi)
en A1 j'écris =DisplayFormula(A2)
en A2 j'écris =2,73*3,2+(3,79-3,2)*1,01
en A1 s'affiche =2,73*3,2+(3,79-3,2)*1,01
en A2 s'affiche 9,3319
c'est magique.
Messages postés
25250
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
6 septembre 2020
5 438
Bonsoir Fox
Peut être quelqu'un comprendra t il mieux que mpi ce que vous b$voulez; i c'est écrire une opération complète dans un seulle cellule pour avoir le résultat à coté, ça risque d'être difficile! Possible pour le peu que je sais, pour certaines opération limitées, mais ça n'ira pas bien loin:
Par exemple en A1: 25 x 32 et en A2 =DROITE(A1;2)*GAUCHE(A1;2) qui vous donnera le résultat, mais pour des nombres à 2 chiffres seulement, ou + si vous remplacez le;2 par un ;X selon ce que vous souhaitez. Dangereux et aléatoire.
Je vous laisse entre les mains de meilleurs que moi qui rendent bien des services sur ces forums.
Cordialement
Messages postés
25250
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
6 septembre 2020
5 438
Effectivement Eric, vouis avez mieux percuté que moi sur le sujet! Bien cordialement
Messages postés
25250
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
6 septembre 2020
5 438
Pour aller dans le sens d'Anonyme, vous pouvez aussi

_1° copier vos formules dans une colonne neutre
_2° utliser l'option d'Eric pour afficher les formules
(Barre des taches / Outil / Option / Affichage / cocher "formules")
_3° Sélectionner l'affichage de la colonne neutre
_4° Barre des taches/ Edition/ Remplacer
Remplacer: = par '=
lorque vous retournez sur l'option formule pour la retirer, les formules inscrites dans la colonne neutre resteront affichées, mais évidemment, ne seront plus opérationnelle.
A tout hasard .....
CRDLMNT
Je vous remercie tous de m'apporter votre aide, mais je n'ais toujours pas réussi.

je me suis peut-etre mal expliqué car aucun de vos truc ne fonctionne.

Je précise, je suis sous vista avec office 2007

ce que je souhaite :
exemple
dans cellule A1 il ya : =(5+6+8+9+3)*2.5
dés que je fais "enter" le résultat s'affiche et pour le détail il faut que je selectionne à nouveau la cellule.

Je souhaiterais le détail dans une cellule et le résultat dans une autre.

Avec toute vos astuces je ne réussi qu'à afficher 2 résultats, peut-etre à cause de excel 2007...

l'option d'Eric pour afficher les formules
(Barre des taches / Outil / Option / Affichage / cocher "formules") ne fonctionne pas avec 2007????????????

ou alors je suis une bXXXX!

encore merci de m'accorder un peu de votre temps

donc pour l'instant j'utilse le (') mais çela me ralentit dans mon taff.
Bonjour Fox,

si dans ta cellule donné tu veux voir le détail alors met un apostrophe devant =. Dans ton autre cellule copie cette formule sans l'apostrophe.
Voilà!
Messages postés
25250
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
6 septembre 2020
5 438
Bonjour

je me permet d'insiste, car votre question semble de plus en plus claire pour qu'il soit difficile de comprendre pourquoi vous en vous en sortez pas. Si vous ne copiez pas deux fois la formule, vous ne pourrez pas avoir le résultat et la formule dans la même!

Si vous avez ça dans A1, une option consiste à le recopier dans B1 avec, avant le signe égal l'apostrophe ('), ainsi votre calcul apparaitra décomposé dans cette cellule neutre
ou mieux:
Vous pouvez facilement, comme je l'ai déja dit, faire une macro pour cela en attendant que l'on vous propose mieux:
par exemple,au plus simple à mon avis et à l'inverse, une macro, qui:
à partir d'une formule rentrée sous la forme avec apostrophe devant égal dans la colonne A1
vous la réécrira dans la colonne A2>>>> Ensuite, Edition/ Remplacer:remplacer '= par = et miracle, la case B1vous affichera le résultat, car vos "formules" ne sont apparemment que des opérations et ne font pas référence à d'autres cellules.
les macros, pour mémoire peuvent se commander par le clavier.
Par ailleurs:
Je n'ai pas la version 2007, mais je pense que la proposition "formule" d'Eric marche très bien. Je crois par contre avoir compris sur ces forums que excel 2007 ne demandait pas la même manip. (cherchez dans le forum "valeur 0".
Bien cordialement
Salut

Je n'utilise pas de tableur, (quel qu'il soit), pour l'instant, mais j'ai quelques idées (et notions) :

Afficher le détail des opérations dans les cellules ; (il y a une option spéciale pour ça (...)) :

Mon idée : tu peux, si tu veux, faire ta formule "normalement", et pour le résultat, tu affiches les caractères de contrôles, comme des caractères normaux (avec les "balises appropriées"), suivi du résultat du calcul de la cellule ; ensuite, dans la cellule d'à coté, tu vas chercher le résultat, dans l'autre cellule (...), en ne sélectionnant, que, les 3 caractères à droite, par exemple. merci.

Explication sur un point :
Si tu mets, un plus = "+", dans une formule, c'est le signe pour faire une addition, mais ce signe peut être affiché comme un "simple" caractère ; il n'a pas d'effet sur le calcul ; il est juste affiché. Il faut utiliser un code, pour que le "+" ne soit pas "interprété", comme un signe de contrôle notamment, mais comme, je le répète, comme un simple caractère. merci.

merci .

à+
Messages postés
23461
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020
6 330
Bonjour,

Je pense que excel 2007 doit avoir la même option mais cachée qcq part...
Comme apparemment c'est n'est pas un besoin ponctuel mais pour présenter un résultat je te propose une fonction à mettre dans un module.

Pour ajouter une fonction personnalisée :
- clic droit sur le nom de l'onglet de ta feuille
- "Visualiser le code"
- Fenetre en haut à gauche clic droit sur "VBAProject(nom_de_ton_classeur)" puis "Insertion / module"
- coller le code

Function AffFormule(cel As Range, format As Integer)
    If format = 0 Then
        AffFormule = "(" & cel.Formula & ")"
    ElseIf format = 1 Then
        AffFormule = cel.Formula & " (" & cel.Address & ")"
    Else
        AffFormule = "(" & cel.Address & ")" & cel.Formula
    End If
End Function


Utilisation :
- Sélectionner la cellule où afficher la formule
- menu "Insertion / Fonction..." catégorie "Personnalisée"
- sélectionner AffFormule
- parametre 1 : sélectionner la cellule contenant la formule à afficher
- parametre 2 : donner le format d'affichage
0 => (=A11+A12)
1 => =A11+A12 ($A$13)
2 => ($A$13)=A11+A12

Avec ces qcq exemples d'affichage tu peux programmer le tien.
Pour ne pas alourdir le code je ne fais pas le test qu'une seule cellule est sélectionnée...

eric
Messages postés
23461
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020
6 330
Décidement on est synchro Vaucluse ;-)
bonne journée
Messages postés
25250
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
6 septembre 2020
5 438
Bonjour Eric, bon dimanche.
Pour pérciser un pont un peu "léger" de mes coseils et après conrole:
La fonction Remplacer ne reconnait pas l'apostrophe. On peut éventuellement tourne la difficulté en affichant (en A1 dans mon exemple), la formule avec l'appelation F= au lieu de l'apostrophe. Ca revient au même et là, le remplacement marche
Mais sur mon excel, par contre, il faut au moins sélectionner deux cellules au minimum dans la macro, car sinon, avec une seule cellule, excel prbnd en compte toute la feuille.
Les mystères d'excel
Bien cordialement à tous, bon dimanche.
Science sans conscience n'est que ruine de l'Ame
Messages postés
23461
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020
6 330
Je crois que pour excel ' est là pour forcer le format texte, d'ailleurs si tu fais une recherche en utilisant le joker ? (rechercher ?=) il ne trouve pas non plus.
Je pense qu'il faut considérer ' comme un caractère de formatage non affiché ne faisant pas partie de la chaine
Et excel ne limite sa recherche à une sélection que s'il y sélection d'une plage, sinon il balaye la feuille, logique ;-)
eric
Messages postés
52232
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020
14 001 >
Messages postés
23461
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020

Eric,
Ne cherche pas : C'est moi qui ai voté POUR ...
Amicalement.
Messages postés
25250
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
6 septembre 2020
5 438
Tout cela est vrai, Eric, mais cependant, après avoir utilisé la fonction "remplacer" quelques années sans trouver comment faire avec une seule cellule, je viens (enfin, tout arrive) de m'a percevoir que , lorsqu'une seule cellule est sélectionnée, il faut cliquer sur "remplacer" et non sur remplacer tout, auquel cas ça marche.
Encore une trentaine d'année et j"aurais sans doute tout compris.
Ceci dit, on est en droit de se demander à quoi sert dans la boîte, de placer les deux options? La est sans doute le vrai mystère
CRDLMNT
Messages postés
52232
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020
14 001
Vaucluse,
Au nom de tous les utilisateurs de CCM (ou au moins 90% d'entre eux), MERCI ! Donc j'ai voté POUR ...
Amicalement.
Messages postés
25250
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
6 septembre 2020
5 438
Bonjour Raymond (ou bonsoir, je ne vais pas faire de calculs de décalage un dimanche!)
... j'ai beau relire tous mes messages de cette rubrique, mis à part le constat que je tape comme un cochon, je ne vois pas ce qui me vaut ce Merci, ni même ce pour quoi vous avez voté.
Mais ça ne fait rien, j'en suis fier quand même
Bien cordialement
Messages postés
52232
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020
14 001
Mais, cher Vaucluse, pour la simplification que tu apportes à mes (nombreuses) opérations de remplacement unique, au cours desquelles je devais penser à sélectionner au moins une deuxième cellule, et pas n'importe laquelle ; en effet je n'essayais même pas (et combien d'autres font pareil !) d'utiliser la touche "Remplacer" ! Et ta remarque est judicieuse : Pourquoi 2 options ?
Eh oui, c'est stupide de ma part, et c'est pourquoi ton rappel m'a été profitable.
Ce sont des petits gestes qui, souvent, facilitent la vie et réduisent le temps passé sur les tableurs et autres logiciels ...
Alors je persiste et signe : encore merci.
Salut

Traduction de terme ; ou ... rallonge ; remplacement de texte ; Microsoft Excel ; Tableurs :

Remplacer... => Remplacer une seule occurrence ; celle (ou celles?) qui est (ou sont?) sélectionnée(s) ! ;-)
Remplacer tout => Remplacer toutes les occurrences ; même si elle ne sont pas sélectionnées ! ;-)

merci de compléter / modifier ;-) ; et merci à tous.

à+
Messages postés
16474
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
6 septembre 2020
9 684
Bonjour à tous !


La réponse d'Eiiiic me paraissant la plus sage et la plus simple, je vais simplement ajouter mon grain de sel pour Fox afin de lui dire où est cachée cette fameuse fonction dans la version 2007 ! ;))

Bouton Office, Options Excel
Options avancées
Afficher les options pour cette feuille de calcul : "Formules dans les cellules au lieu de leurs résultats calculés"

m@rina
Messages postés
25250
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
6 septembre 2020
5 438
Exact, Anonyme, à quelques virgules près sur mon excel qui doit décidement être une édition spéciale!
En fait, lorque l'on ne sélectionne pas de cellule incluant l'élément à remplacer:
_Remplacer: excel ne trouve rien
_Remplacer tout: excel prend toute la feuille

Jusque là nous sommes d'accord

Par contre, lorqu'un champ est sélectionné:
_Remplacer: Excel remplace la 1° cellule du champ et celle là seulement
_Remplacer tout: Excel ne prend que le champ, mais pas la feuille.

Est ce le mien qui est spécial?ou ai je le droit de ne pas trouver cela bien logique?
Bien cordialement
Salut

Justement, "Vaucluse", Post #19, je souhaite cette fonction, mais "en plus" (voir mon Post #17) ; à savoir :

_Remplacer tout: Excel ne prend que le champ, mais pas la feuille.

Pour le reste, cela me parait logique ...

Très, très, bien cordialement. merci.

à+
Messages postés
52232
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020
14 001
Salut, Fox

Pour synthétiser les propositions de Vaucluse et Eric, tu pourrais saisir '=(5+6+8+9+3)*2.5 en A1 et =(5+6+8+9+3)*2.5 en A2.
Mais il faut répéter la manipulation dans toute ta colonne d'opérations, et s'il y en a beaucoup ...

En tout cas il n'y a apparemment pas de formule disponible, les fonctions Texte EPURAGE, STXT, GAUCHE, etc ne produisant comme résultats que du texte, et pas des formules.

Cependant au cours de mes différents tests pour étudier ta question, j'ai trouvé quelque chose qu'on pourrait qualifier d'amusant, car je te vois mal l'utiliser pour plus de 3 ou 4 cellules (au-delà ce serait trop barbant, sauf si quelqu'un trouve une macro pour ...) :
* Saisis ta formule normale en A1 et valide en utlisant le coche vert juste à gauche: Le résultat de l'opération s'affiche --> 77,5 et tu es toujours dans la cellule A1.
* Sélectionne la formule dans la Barre de formule et fais Copier, puis re-valide ta formule en utlisant le coche vert juste à gauche. Aucun changement pour l'instant.
* Va dans Format/Cellule/Nombre/Personnalisée ; dans la boite de dialogue, place-toi dans la fenêtre "Type", et tout au début du format (en principe Standard), insère un guillemet ["] et fais [CTRL+ V] pour coller la formule, puis tape un espace ou plusieurs, puis = ou --> , et pour terminer, un guillemet [ --> "] et valide.
* Tu obtiens =(5+6+8+9+3)*2.5 --> 77,5

... c'était juste pour le fun ...
Messages postés
23461
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
7 septembre 2020
6 330
Bonsoir raymond

"sauf si quelqu'un trouve une macro pour ... "
regarde de plus près mon post 9 ;-)
@+
eric
Un grand merci à tous et à toutes pour vos solutions.

Comme je pars ce soir pour une semaine et que je n'aurais pas accès au net je vais imprimer tout vos trucs et astuces, je pense que dans le lot, il doit bien avoir quelque chose qui fonctionne.

Je devrais avoir le temps de me pencher dessus avant la fin de la semaine prochaine.

Ps : je vous tiens au courant promis!

Fox
Salut

Du texte en formule :
Pour les fonctions, Texte EPURAGE, STXT, GAUCHE, Etc. (Voir le Post #21, par "Raymond PENTIER") :

* Soit, on utilise la fonction conditionnelle "SI" (ou une autre) ; cela alors faire ceci ou alors cela ;
* Soit, on converti le contenu récupéré en nombre ou chiffre pour le rendre utilisable pour un calcul .

merci .

à+