Annuler la correction automatique du format

gbcof

XLDnaute Nouveau
Bonjour,

Voilà mon problème, je fais un remplacement avec une macro dans un fichier Excel.
Avant le remplacement, je fixe le format de ma zone à texte pour éviter les conversions automatiques en faisant : Selection.Numberformat = "@"
Mais lors du remplacement, Excel convertit automatiquement mes cellules en écriture scientifique. Or, je veux que ça reste du texte. En gros, une cellule contenant au final 2E1 doit afficher "2E1" et non 20...

Quelqu'un sait-il comment je peux empêcher cette conversion automatique?

Merci d'avance :)
 

skoobi

XLDnaute Barbatruc
Re : Annuler la correction automatique du format

Bonjour,

tu mets une condition avant de changer le format.
Remplace

Code:
Selection.Numberformat = "@"

par
Code:
For each cel In Selection
If IsNumeric(cel.Value) Then cel.Numberformat = "@"
Next
 

gbcof

XLDnaute Nouveau
Re : Annuler la correction automatique du format

Rebonjour,

On ne s'est pas bien compris, je pense. Ta solution ne fonctionne pas, je pense que cela revient plus ou moins à faire ce que je faisais déjà. Je joins donc fichier qui je l'espère sera plus explicite que mes mots!
 

Pièces jointes

  • Classeur.xls
    14.5 KB · Affichages: 142
  • Classeur.xls
    14.5 KB · Affichages: 153
  • Classeur.xls
    14.5 KB · Affichages: 154

Excel_lent

XLDnaute Impliqué
Re : Annuler la correction automatique du format

Salut gbcof, skoobi et aux autres.

Code à essayer :
Code:
Sub Remplacer1()
  Range(Cells(2, 1), Cells(Cells(65536, 1).End(xlUp).Row, 1)).Select
  For Each cel In Selection
    Selection.Replace What:="toto", Replacement:="[COLOR=Red][B]'[/B][/COLOR]2E1"
  Next
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 231
Messages
2 086 442
Membres
103 210
dernier inscrit
Bay onais