Probleme End if [Résolu]

Signaler
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005
-
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005
-
Salute ,
Voila mon prblème je veux que l'utilisateur quand il est sur les drive dir et file list box doit choisir automatiquement un seul fichier (config.cfg) et que si ce fichier est choisi et quil clic sur suivant il aille sur Form2 ou sinon un message d'erreur voici mon code :

Option Explicit
Dim Texte As String
Dim Titre As String
Dim toto As String

Private Sub Command1_Click()
If File1.Pattern = "config.cfg" Then Form2.Show
Else If
Texte = "Choisir le fichier config.cfg !"
Titre = "Erreur"

toto = MsgBox(Texte, vbOKOnly, Titre)

End If
End Sub

Private Sub Dir1_Change()
File1.Path = Dir1.Path
End Sub

Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive
End Sub

Private Sub Form_Load()
File1.Pattern = "config.cfg"
End Sub

Le problème se situe au niveau du Else If je sais pas quoi marqué j'ai que des message d'erreur : Syntax error

Donc voila merci davance pr votre aide ! a+ !cl!c

13 réponses

Messages postés
1016
Date d'inscription
samedi 22 mars 2003
Statut
Membre
Dernière intervention
24 juin 2008

Salut,

Bin oui il est fauxxxxxxxx :-)

sans doute que le copier coller s'est mal passé, ca m'arrive souvent aussi

quand tu as : If File1.Pattern = "config.cfg" Then Form2.Show

VB considere que tout est sur la meme ligne donc tu peux mettre un "esle" sur cette meme ligne. Par contre si le else est sur une autre ligne, tu dois avoir apres le then, un code de programmation les séparants:

Private Sub Command1_Click()

If File1.Pattern = "config.cfg" Then 
Form2.Show
Else 
Texte = "Choisir le fichier config.cfg !"
Titre = "Erreur"
toto = MsgBox(Texte, vbOKOnly, Titre)
End If

End Sub



la structure doit fonctionner comme cela, par contre pour le résultat, je ne peux te dire.

sinon tu peux toujours utiliser les select case ... case ... case else

Bonne prog, poele_a_frire@hotmail.com
liquide
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 179 internautes nous ont dit merci ce mois-ci

Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
16
sn0wb0ard3r > j'espère que ta remarque à liquide c pas ironique !?

Maintenant, si tu veux mettre tout sur la même ligne tu peux aussi coder :
If File1.Pattern "config.cfg" Then Form2.Show Else Texte "Choisir le fichier config.cfg !": Titre = "Erreur": toto = MsgBox(Texte, vbOKOnly, Titre)

C'est super pour la compréhension et la maintenance du prog ! :big) , et sans ironie !!

Cordialement, CanisLupus

Tous les glands ne deviennent pas des chênes mais tous les chênes ont été des glands
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 179 internautes nous ont dit merci ce mois-ci

Messages postés
34
Date d'inscription
lundi 26 avril 2004
Statut
Membre
Dernière intervention
28 juin 2005

C'est pas bien dur...

En fait tu as deux possiblités...
Je pense que en fait tu as mis Else If à la place de Else...
N'oublies pas, si tu mets un If, il faut un Then, et un End if!!!

Voila ton code...

Private Sub Command1_Click()

If File1.Pattern = "config.cfg" Then Form2.Show
Else
Texte = "Choisir le fichier config.cfg !"
Titre = "Erreur"
toto = MsgBox(Texte, vbOKOnly, Titre)
End If

End Sub

Voila!!!
oublies pas d'éclairer ton code, et de mettre des explications dessus...

Bonne continuation!

m@tt
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

j'ai copier coller le code que tu ma donenr ca marche tjrs pas j'ai une erreur quand j'appuie sur le bouton : Else without If

merci de ton aide a+ !cl!c
Messages postés
34
Date d'inscription
lundi 26 avril 2004
Statut
Membre
Dernière intervention
28 juin 2005

bien vu liquide...

Je savais pas que pour mettre un else, il fallait forcément faire un saut de ligne après le then...

Je me coucherais moins bête aujourd'hui!!!
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

vla j'ai reussi merci a tous et j'ai une demande est ce que qqun peut m'éclairer pour savoir ou est ce que jpe savoir comment bien metriser les combobox ou un tuto pr apprendre !
Messages postés
34
Date d'inscription
lundi 26 avril 2004
Statut
Membre
Dernière intervention
28 juin 2005

Je vais pas répondre avec ironie à qqc que je savais pas...

Si je me suis planté au dessus c'est que je savais pas... Donc j'ai vraiment appris qqc et je me coucherai plus intelligent ce soir...
Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
16
sn0wb0ard3r> 8-) T'en fais pas, c'était qu'une blague (just a joke) et puis, moi aussi, je me couche tous les soirs plus intelligent (ou plus cultivé). Ce qu'il en reste au réveil, heu,.... j'ai droit à un joker ? :big)

iclic>Que veux tu savoir de précis sur les combos, sur le site il y à déjà plein d'exemples.

Cordialement, CanisLupus

Tous les glands ne deviennent pas des chênes mais tous les chênes ont été des glands
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

ben enfaite je veux voudrai trouver un tuto qui explique bien comment sen servir exemple quand le mec selectionne un mot de la liste que sa definisse une action j'ai encore rien trouver sur le net appart un source sur ce site mais ca montre juste les 3 exemple de combobox ! a+!cl!c
Messages postés
94
Date d'inscription
dimanche 29 septembre 2002
Statut
Membre
Dernière intervention
26 août 2009

Bonjour,

Juste un petit mail pour que la maintenance et la compréhension des codes soit plus facile !!

Private Sub Command1_Click()

If File1.Pattern = "config.cfg" Then
Form2.Show
Else
Texte = "Choisir le fichier config.cfg !"
Titre = "Erreur"
toto = MsgBox(Texte, vbOKOnly, Titre)
End If

End Sub

Voila, cela s'appelle indenter !
Il existe un programme qui s'en occuppe tout seul, il s'appelle "indenter"
cela evite les if sans end if et else qui sortent de nulle part.

Voila Voilou

A plus
SebOfBorg
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

ok mici je vai me pencher sur ce progr !
Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
16
iclic> Un combobox, c pas si compliqué.
Si tu veux déclencher une action, il te suffit de mettre du code dans les évènements Change, Click ou DblClick.

Tit exemple une form avec un label (label1) et une combo (combo1) :

Private Sub Combo1_Click()
Label1.Caption = Combo1.Text
End Sub

Private Sub Form_Load()
Combo1.AddItem "toto"
Combo1.AddItem "tutu"
If Combo1.ListCount > 0 Then Combo1.ListIndex = 0
End Sub


Cordialement, CanisLupus

Tous les glands ne deviennent pas des chênes mais tous les chênes ont été des glands
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

ok voila merci canislupus je vien de comprendre comment ca marche merci bcp a+ je vai lacher une otre question mais je vai faire un otre sujet !