Test if jamais vrai VBA

Résolu
pou pouille Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   -  
pou pouille Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,et bon année,
voila j'ai un petit problème avec une condition if en VBA , j'aimerai savoir d'ou peut provenir le problème:
je teste si la valeur de la cellule "G" & i est = à la combobox2, voila partie de mon code:
    If Sheets(4).Range("G" & i).Value = Me.ComboBox2.Value Then
le problème c'est qu'il ne passe jamais le then ( j'ai mis juste un Msgbox dedans pour vérifier)
dans la feuille 4 colonne G il y a bien la valeur cherchée qui est un nombre.
j'èspère que vous pourez m'aider parce que la je sèche , je fait le meme test avec une chaine de caractère et ca passe nikel chrome... :/
Par avance merci.
Pou Pouille
A voir également:

13 réponses

pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Salut,
Peut être un problème de format.
Essaye ceci :
si G & i est un nombre :
If Sheets(4).Range("G" & i).Value = Cnum(ComboBox2) Then

0
pou pouille Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   31
 
merci de ta réponse rapide, mais quand je lance il me dis:
erreur de compilation:
sub ou fonction non définie
et il me surligne le
Cnum
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour,

Comme le dit Pijaku, cela ressemble à un problème de format
c'est un des 2
regarde dans la feuille si la cellule comporte un nombre (=estnum(la cellule))

pour transformer en nombre dans la proc VBA
Csng ou Cdbl si nombre a virgule
cint ou Clng si nombre entier

(Cnum est une fonction XL pas VBa: réveille toi Pijaku, c'est l'heure!) ;-)
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Salut michel,
Oui effectivement, n'ai pris que 2 cafés ce matin... Merci de m'avoir repris.
Si tu n'as pas vu mon message d'hier, je te présente mes meilleurs voeux pour 2010.
0
pou pouille Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   31
 
Merci a tout le deux.
alors oui les cellules sont au format numérique ( je l'ai fais mois meme et vérif avec la fonction).
en effet le problème venait bien du format de la combobox :/
et avec Cint ca fonctionne bien mieux maintenant :)
Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
donc, meilleurs voeux, Pijaku, et pendant que j'y suis, même punition pour pou pouilleet tous ceusse qui liront cette discussion
what else ?
0
pou pouille Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   31
 
merci ,meilleurs voeux a vous deux aussi
0
pou pouille Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   31
 
j'ai une autre question concernant les formats.
existe-t-il le meme genre de fonction que Cint etc... mais pour une format date jj/mm/aaaa
quelquechose du style date(range("G" & i))
je sais que il existe Format mais j'ai un soucis: quand je transfert une date d'une feuille à une autre les date supérieures au 12ème jour basculent en format anglais :s
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Essaye CDate(range("G" & i))
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
re-re,

essaies
range("G" & i).NumberFormat = "dd/mm/yy;@"
0
pou pouille Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   31
 
ha.... alors la c'est la fin , je comprend plus grand chose a ce qui se passe , déja j'avai essayer de régler le problème en bidouillant, mais la du coups il me passe tout au format anglais , ca craint.
je met mon fichier en ligne si vous pouvez juste jetter un petit coup d'oeil le formulaire s'apelle consulter formation et le DTPicker 1 est celui ou j'ai essayé de metre le format.
http://www.cijoint.fr/cjlink.php?file=cj201001/cijq6FgsGJ.xls
0
pou pouille Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   31
 
Hoooo , la galère , j'ai fini par résoudre mon problème mais c'est pas du très joli ,déja que mon fichier est gros.
la solution est que j'ai viré le format date de la feuille dans laquelle je colle des donnée et à chaque fois que je colle j'écrit ca :
    ladate = Sheets(4).Range("B" & i)
    Sheets(5).Range("B" & j).Value = Format(ladate, "M/d/yyyy")
    ladate = Sheets(4).Range("C" & i)
    Sheets(5).Range("C" & j).Value = Format(ladate, "M/d/yyyy")
0
garion28 Messages postés 1545 Date d'inscription   Statut Membre Dernière intervention   406
 
salut,
as tu vérifié que tes variables i et j était bien égal aux ligne souhaité ? que ces variables soit bien initialisé au début ?
0
pou pouille Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   31
 
oui oui , ca c'est vérifié ,mais le problème ne venais pas des variables pour les cellules mais plustot du formats des cellules.
Problème résolu
0