Empecher la mise en forme automatique en format scientifique

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

J'ai un code du genre :

DL = Cells(Application.Rows.Count, 4).End(xlUp).Row

For i = DL To 4 Step -1

If Range("A" & i) = "" Then
    Range("A" & i).Value = CDate(Range("A" & i - 1).Value)
    Range("B" & i).Value = Range("B" & i - 1).Value
    Range("C" & i).Value = Range("C" & i - 1).Value
    Range("E" & i).Value = Range("E" & i - 1).Value
    Range("F" & i).Value = CStr(Range("F" & i - 1).Value)
    Range("G" & i).Value = Range("G" & i - 1).Value
    Range("H" & i).Value = CDate(Range("H" & i - 1).Value)
Rows(i - 1).Delete

i = i - 1
ElseIf Range("B" & i) = Range("B" & i + 1) And Range("C" & i) = Range("C" & i + 1) Then
    Rows(i).Delete
End If


Voilà j'ai la ligne :

Range("F" & i).Value = CStr(Range("F" & i - 1).Value)


J'ai mis CStr pour contrer le fait que dès que le nombre est trop long, il se met en format scientifique. Ce sont des numéros de facture dont je ne veux pas. Je pensais que forcer un format texte empêcherait ça mais apparemment non.

Une idée?

Merci d'avance.

Cordialement.
A voir également:

1 réponse

pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Bonjour,

Puisque
Range("F" & i).Value = CStr(Range("F" & i - 1).Value)

Je m'étonnes qu'en i-1 ce ne soit pas déjà le cas...

Essaye ceci :
Range("F" & i).Value = "'" & Range("F" & i - 1).Value

ou ceci :
Range("F" & i).Value = "'" & CStr(Range("F" & i - 1).Value)
0
Kuartz Messages postés 852 Date d'inscription   Statut Membre Dernière intervention   61
 
Range("F" & i).Value = "'" & Range("F" & i - 1).Value


Niquel :)

Merci beaucoup.
0