[VBA] Excel

Fermé
poulain35 - Modifié par poulain35 le 2/07/2010 à 09:12
 poulain35 - 2 juil. 2010 à 10:14
Bonjour,

J'ai une colonne où il y a des nombres de 1 à 65 grâce a ces nombres j'écris des données dans leur ligne avec :

If Clients.Cells(ligne, 22).Value = "65" Then 
    Clients.Cells(ligne, 30).Value = "test" 
    Clients.Cells(ligne, 31).Value = "test"
End If


mais si par exemple dans la colonne j'ai un nombre supérieur à 65 j'aimerai qu'il m'affiche un MsgBox.

Pour le moment je rempli juste la case 30 par "Erreur" j'ai :

    If Clients.Cells(ligne, 22).Value > "65" Then 
    Clients.Cells(ligne, 30).Value = "Erreur"
End If


Mais quand je regarde dans mon tableau plus haut, je m'aperçois qu'aux nombres 7, 8, 9 j'ai sur leur ligne à la case 30 écrit "erreur" je ne vois pas pourquoi, quelqu'un aurai une idée s'il vous plait ...

A voir également:

3 réponses

chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 306
2 juil. 2010 à 09:16
Bonjour,

tu n'est pas la seule à faire l'erreur que tu as commis. Tu as mis des guillemets autour de ton 65, qui est donc dans ce cas considéré comme une chaîne de caractères, pas comme un chiffre.

Il compare donc un chiffre à une chaîne. Donc il regarde si ton chiffres est plus grand que le 1er caractère, sinon il compare au 2e et ainsi de suite...

Sans guillemet, ça ira mieux.

Cordialement.
0
Aaaaaa merci beaucoup !!!
0
chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 306
2 juil. 2010 à 09:28
Mais de rien, c'est une erreur souvent présente, que je faisais également quand j'étais jeune programmeur VBA ^^
0
Encore deux petite question ^^, quand il y a des caractères il me met automatiquement "Erreur", c'est pour la 1ere ligne de mon tableau.

Et puis le problème est qu'il me fait l'erreur pour chaque ligne, car j'ai un " next ligne " alors que j'aimerai qu'il m'indique l'erreur qu'un seul fois.
0