Mettre un espace devant toutes les formules d'une plage sélect.
Résolu
nihcoc
Messages postés
193
Date d'inscription
Statut
Membre
Dernière intervention
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
A voir également:
- Mettre un espace devant toutes les formules d'une plage sélect.
- Espace insécable - Guide
- Toutes les formules mathématiques pdf - Télécharger - Études & Formations
- Espace de stockage gmail plein - Guide
- Mettre 0 devant chiffre excel - Guide
- Espace stockage google - Guide
10 réponses
Bonjour,
Si tu rajoutes un espace, tes formules ne fonctionneront plus.
Tu n'as pas besoin de macro car cela fonctionne très bien avec ctrl+h
Si tu rajoutes un espace, tes formules ne fonctionneront plus.
Tu n'as pas besoin de macro car cela fonctionne très bien avec ctrl+h
j'ai essayé avec Ctrl+H,cela m'ouvre la boite "RECHERCHER".
je cherche a mettre un espace devant chaque formule d'une plage de façon a pouvoir déplacer cette même plage sans changer les coordonnées de mes formules.
ensuite je supprime les espaces .
je cherche a mettre un espace devant chaque formule d'une plage de façon a pouvoir déplacer cette même plage sans changer les coordonnées de mes formules.
ensuite je supprime les espaces .
J'ai remplacé "plage" par "selection" dans la macro ,mais ça transforme la formule par sa valeur ,ce qui n'est pas le but recherché.
le but recherché étant de pouvoir déplacer une plage de cellule remplie de formules sans altéré les références des formules.
le but recherché étant de pouvoir déplacer une plage de cellule remplie de formules sans altéré les références des formules.
Si tu copies une "plage" ou une "sélection" c'est nécessairement sa valeur donc pour faire ce que tu veux faire il faut modifier "formula" en début et en fin.
Dim cel As Range For Each cel In Selection.Cells If Left(cel.Formula, 1) = "=" Then cel.Formula = " " & cel.Formula End If Next cel Selection.Copy Destination:=[nouvelle plage]
Je n'ai pas copier la dernière ligne de code car je voulais déplacer la plage manuellement ,mais ça marche très bien.
Sans vouloir abuser de ton temps ,serait il possible d'avoir le code pour faire l'inverse,c'est a dire que dans la nouvelle plage ,pouvoir enlever les formules qui on donc un espace au début pour les rendre actives.
Merci
Sans vouloir abuser de ton temps ,serait il possible d'avoir le code pour faire l'inverse,c'est a dire que dans la nouvelle plage ,pouvoir enlever les formules qui on donc un espace au début pour les rendre actives.
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je vous envoie la macro qui met un espace devant chaque formule, elle marche très bien.
mais je n'ai pas réussi a la modifier pour enlever l'espace,si vous pouviez me faire la modification,ce serait parfait
Sub Macro2()
Dim cel As Range
For Each cel In Selection.Cells
If Left(cel.Formula, 1) = "=" Then
cel.Formula = " " & cel.Formula
End If
Next cel
End Sub
mais je n'ai pas réussi a la modifier pour enlever l'espace,si vous pouviez me faire la modification,ce serait parfait
Sub Macro2()
Dim cel As Range
For Each cel In Selection.Cells
If Left(cel.Formula, 1) = "=" Then
cel.Formula = " " & cel.Formula
End If
Next cel
End Sub
Dans la boite remplacer,je n'ai pas de bouton option .
de plus si je demande un coup de main pour les macros ,c'est justement parce que j'ai des lacunes.
de plus si je demande un coup de main pour les macros ,c'est justement parce que j'ai des lacunes.
version 2000 comme je l'ai mis dans ma question .
Bonjour,
Comme je te l'avais dit et qu'Éric te l'a répété, je pense que l'utilisation de ctrl+h est bien plus judicieuse qu'une macro.
Sur la version 2000 "Options" est présente.
Cependant si tu veux la macro inverse, il suffit de modifier la première en conséquence.
Comme je te l'avais dit et qu'Éric te l'a répété, je pense que l'utilisation de ctrl+h est bien plus judicieuse qu'une macro.
Sur la version 2000 "Options" est présente.
Cependant si tu veux la macro inverse, il suffit de modifier la première en conséquence.
Sub Macro3() Dim cel As Range For Each cel In Selection.Cells If Left(cel.Formula, 2) = " =" Then cel.Formula = Mid(cel.Formula, 2) End If Next cel End Sub
Bonjour
Je ne comprend pas parce que je n'ai pas de bouton option dan la boite de dialogue "REMPLACER".
Par contre je ne comprend pas pourquoi dans la macro que vous m'avez envoyé (5)qui fonctionne d'ailleur très bien,les fonctions qui sont utilisés dans les formules qui était en français se transforme en anglais.
J'ai aussi essayé en affichant les formules et ensuite de les déplacer,mais les références de formules changent.
Alors qu'avec votre macro quand on déplace les formules elle ne changent pas.
Merci d'avance
Je ne comprend pas parce que je n'ai pas de bouton option dan la boite de dialogue "REMPLACER".
Par contre je ne comprend pas pourquoi dans la macro que vous m'avez envoyé (5)qui fonctionne d'ailleur très bien,les fonctions qui sont utilisés dans les formules qui était en français se transforme en anglais.
J'ai aussi essayé en affichant les formules et ensuite de les déplacer,mais les références de formules changent.
Alors qu'avec votre macro quand on déplace les formules elle ne changent pas.
Merci d'avance