Macro excel placer le signe = en premier

Résolu
forrest55 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
forrest55 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je planche sur un problème depuis un moment et je n'arrive toujours pas à trouver de solutions.

J'aimerai créer une macro qui me permette de placer le signe = devant une formule.

Exemple: j'ai dans ma cellule le contenu suivant : 8+5*1

je voudrai créer un macro qui me copie le contenu de cette cellule dans la cellule de droite puis me place le signe = devant afin que la macro me renvoie le résultat.

En faisant ça, je peux toujours avoir en vue la formule et dans la case d'à côté le résultat qu'elle renvoie

Merci d'avance pour votre aide
A voir également:

3 réponses

eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour tout le monde,

Il y a une autre possibilité :
sélectionner B1,
'insertion / nom / definir...'
nom dans le classeur: evaluer
Fait référence à: =EVALUER(A1)
Ensuite si tu as 8+5 en A3, en B4 mettre: =evaluer

Mais en général on fait l'inverse...
On écrit la formule, ce qui permet de voir si elle est correcte.
Et une macro ou fonction personnalisée l'affiche.
ex de fonction personnalisée à mettre dans un module :
Function AffFormule(cell As Range) As String
    AffFormule = cell.FormulaLocal
End Function

syntaxe= =AffFormule(A3)

eric
2
Syzygy Messages postés 378 Date d'inscription   Statut Membre Dernière intervention   144
 
Bonsoir,

Avant de penser à une macro, savez vous qu'il est possible d'afficher rapidement la formule de toutes les cellules d'une feuille à l'aide de la combinaison de touche suivante :
Ctrl + "

Cette solution vous conviendrait-elle?

Bonne soirée,
0
forrest55 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour Syzygy,

Oui je sais que dans l'onglet formule il est possible d'afficher les formules, le problème c'est que cette fonction affiche les formules de toute la feuille et il devient donc impossible de l'imprimer.

Mon but est de pouvoir imprimer la page avec le calcul et le résultat afficher.

J'ai trouvé cette macro qui fonctionne avec plusieurs caractères mais pas avec le signe =.

Sub Ajout_Avant()
Dim cellule As Range
For Each cellule In Selection
cellule = "=" & cellule
Next cellule
End Sub

J'ai trouvé une autre solution en insérant un espace avant le signe = comme ceci:

Sub Ajout_Avant()
Dim cellule As Range
For Each cellule In Selection
cellule = " =" & cellule
Next cellule
End Sub

ça fonctionne, seulement maintenant il faudrait continuer cette macro en supprimant l'espace qui se trouve avant le signe égale, c'est donc à ce moment là que je suis bloqué et que je ne trouve pas de solutions.

Est-ce-que quelqu'un peut m'aider SVP?
0
Syzygy Messages postés 378 Date d'inscription   Statut Membre Dernière intervention   144
 
Bonjour,
J'ai retravaillé votre première partie de code, vous étiez sur la bonne voie dans la logique. Toutefois la syntaxe n'était pas correct. Essayez ceci :

Sub Ajout_Avant()
Dim cellule As Range
For Each cellule In Selection
cellule.FormulaLocal = "=" & cellule.Value
Next cellule
End Sub

Bonne journée
0
forrest55 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Un grand merci à vous pour vos réponses ça fonctionne nikel.

Salutation et bonne journée
0