Bonjour WikEnd, le Forum
C'est normal car
CInt est une Fonction de Conversion qui retourne une Valeur Integer (-32,768 to 32,767)
Essaie plutôt
CDbl qui retournera une Valeur Double...
Par la même occasion il est très peu orthodox de passer de String vers du Numérique si on part d'une valeur en provenance d'une Range...
Voici déjà une exemple de base de test :
Sub VariableDouble()
Dim Valeur1 As Double
Dim Valeur2 As Double
Valeur1 = 5731528.3
Valeur2 = 5126110.59
If CDbl(Valeur1) < CDbl(Valeur2) Then
MsgBox 'Glop Glop'
Else
MsgBox 'Pas Glop'
End If
End Sub
Et maintenant un autre exemple avec gestion d'un test pour vérifier que la Valeur des Range est bien numérique, car la Déclaration 'As Double' ne fera pas de cadeau si il y a 'Toto' en A1...
Sub VariableDoubleFromRangeWithTest()
Dim Valeur1 As Double
Dim Valeur2 As Double
With Sheets(1)
If IsNumeric(.Cells(1, 1)) Then Valeur1 = .Cells(1, 1)
If IsNumeric(.Cells(1, 2)) Then Valeur2 = .Cells(1, 2)
End With
If CDbl(Valeur1) < CDbl(Valeur2) Then
MsgBox 'Glop Glop'
Else
MsgBox 'Pas Glop'
End If
End Sub
En fait à partir de là, la Conversion '
CDbl' devient même inutile, mais je l'ai laissée pour l'exemple
Bon Appétit
[ol]
@+Thierry[/ol]
EDITION !!!
Sorry pas raffraichi et coup de Fil entre-temps pour poster ma réponse...
Bonjour à vous deux aussi Pascal et 2Passage !
Message édité par: _Thierry, à: 01/09/2005 12:05