[VBA]Condition sur le type d'une valeur
Résolu/Fermé
A voir également:
- [VBA]Condition sur le type d'une valeur
- Excel cellule couleur si condition texte - Guide
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Le fichier contient le nombre de voyageurs dans 3 gares. dans la cellule b5, saisissez une formule qui calcule le total et se met à jour si on change une valeur du tableau. quel total obtenez-vous ? quelle formule avez-vous saisie ? ✓ - Forum Google Docs
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Faites afficher avec un fond coloré les cellules qui contiennent une valeur comprise entre 250 et 350. quel nombre est dessiné en surbrillance ? - Forum VB / VBA
2 réponses
jean_pierre
Messages postés
36
Date d'inscription
jeudi 24 août 2006
Statut
Membre
Dernière intervention
5 octobre 2011
6
16 août 2011 à 16:23
16 août 2011 à 16:23
Bonjour
en utilisant la fonction IsNumeric(VarName) qui renvoie une réponse booléenne
ou bien TypeName(VarName) qui renvoie "Integer","String",.....
en utilisant la fonction IsNumeric(VarName) qui renvoie une réponse booléenne
ou bien TypeName(VarName) qui renvoie "Integer","String",.....
melanie1324
Messages postés
1504
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
154
16 août 2011 à 16:27
16 août 2011 à 16:27
bonjour,
voici une petite boucle qui permet de le faire :
Sub cherchedécimal()
i = 1
'balaie toutes les lignes de la colonne 1 jusqu'à ce que la cellule de la colonne 1 de la ligne i soit vide
Do While Cells(i, 1) <> ""
car = Len(Cells(i, 1)) 'variable car = nombre de caractère de la cellule de la ligne i et de la colonne 1
valeur = Cells(i, 1) 'variable valeur = cellule de la ligne i et de la colonne 1
Do While car > 0 ' tourne jusqu'à ce que valeur n'est plus de caractères
If Left(valeur, 1) = "," Then 'si le premier caractère de valeur à gauche est une virgule représentant ton nombre décimal
mess = MsgBox("Il y a un chiffre décimal dans la liste", vbOKOnly) 'alors affichage d'un message d'erreur
Exit Sub 'stop d ela macro
Else
valeur = Right(Cells(i, 1), Len(valeur) - 1) 'valeur devient égal à valeur moins le premier caractère situé à gauche
car = Len(valeur) ' car = nombre de caractère de valeur
End If
Loop
i = i + 1
Loop
End Sub
voici une petite boucle qui permet de le faire :
Sub cherchedécimal()
i = 1
'balaie toutes les lignes de la colonne 1 jusqu'à ce que la cellule de la colonne 1 de la ligne i soit vide
Do While Cells(i, 1) <> ""
car = Len(Cells(i, 1)) 'variable car = nombre de caractère de la cellule de la ligne i et de la colonne 1
valeur = Cells(i, 1) 'variable valeur = cellule de la ligne i et de la colonne 1
Do While car > 0 ' tourne jusqu'à ce que valeur n'est plus de caractères
If Left(valeur, 1) = "," Then 'si le premier caractère de valeur à gauche est une virgule représentant ton nombre décimal
mess = MsgBox("Il y a un chiffre décimal dans la liste", vbOKOnly) 'alors affichage d'un message d'erreur
Exit Sub 'stop d ela macro
Else
valeur = Right(Cells(i, 1), Len(valeur) - 1) 'valeur devient égal à valeur moins le premier caractère situé à gauche
car = Len(valeur) ' car = nombre de caractère de valeur
End If
Loop
i = i + 1
Loop
End Sub
16 août 2011 à 16:39
Merci beaucoup !