Else sans if [Résolu]

Signaler
Messages postés
60
Date d'inscription
samedi 19 novembre 2005
Statut
Membre
Dernière intervention
22 octobre 2007
-
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
-
Salut,
un peu d'aide me ferai beaucoup de bien...

Private Sub BoutABG_Click()If BoutABG.Value True Then FrmKt.TextBox1.Value frm.TextBox1.Value + " " + BoutABG.CaptionElse: If BoutABD.Value True Then FrmKt.TextBox1.Value frm.TextBox1.Value + " " + BoutABD.Caption
    Else        If BoutPliG.Value True Then FrmKt.TextBox1.Value frm.TextBox1.Value + " " + BoutPliG.Caption
            Else                If BoutPliD.Value True Then FrmKt.TextBox1.Value frm.TextBox1.Value + " " + BoutPliD.Caption
            End If
        End If
    End If
End If
End Sub

erreur de compilation pas de else sans if????

Voila ce que vb m'inscrit

pouvez vous m'aider
merci
raphael

6 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
43
salut,
à vouloir gagner 2 ligne avec 2 :, bien difficile de relire....

Private Sub BoutABG_Click()
    Dim sStr As String
    sStr = vbNullString
    
    If BoutABG.Value Then
        sStr = BoutABG.Caption
    ElseIf BoutABD.Value Then
        sStr = BoutABD.Caption
    ElseIf BoutPliG.Value Then
        sStr = BoutPliG.Caption
    ElseIf BoutPliD.Value Then
        sStr = BoutPliD.Caption
    End If
    
    If LenB(sStr) Then FrmKt.TextBox1.Value =
frm.TextBox1.Value & " " & sStr
End Sub

ps : si c'est vraiment du Dotnet, remplacer LenB(sStr) par sstr.lenght (je crois)
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
76
Salut
Dans un If, si tu places la commande à exécuter après le Then sur la même ligne que le If, le Else placé en dessous est orphelin, d'où l'erreur.
Il suffit donc de passer à la ligne après le Then, comme l'a dit PCPT

Une autre solution :
Puisque tu testes toujours tes données à True, tu peux utiliser un Select Case :

Select Case True
   Case BoutABG.Value
      FrmKt.TextBox1.Value = frm.TextBox1.Value + " " + BoutABG.Caption
   Case BoutABD.Value
      FrmKt.TextBox1.Value = frm.TextBox1.Value + " " + BoutABD.Caption
   Case BoutPliG.Value
      FrmKt.TextBox1.Value = frm.TextBox1.Value + " " + BoutPliG.Caption
   Case BoutPliD.Value
      FrmKt.TextBox1.Value = frm.TextBox1.Value + " " + BoutPliD.Caption
End Select

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Essaye cela :
If BoutABG.Value True Then FrmKt.TextBox1.Value frm.TextBox1.Value & " " & BoutABG.CaptionIf BoutABD.Value True Then FrmKt.TextBox1.Value frm.TextBox1.Value & " " & BoutABD.CaptionIf BoutPliG.Value True Then FrmKt.TextBox1.Value frm.TextBox1.Value & " " & BoutPliG.CaptionIf BoutPliD.Value True Then FrmKt.TextBox1.Value frm.TextBox1.Value & " " & BoutPliD.Caption

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
43
explo
-> (salut) non!
le but est si sinon, donc pas de tests consécutifs pour tous

<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
PCPT >> Salut et

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
même proposition codesque que l'ami Jack...

avec des '&' toutefois, pour les concaténations...

Renfield
Admin CodeS-SourceS- MVP Visual Basic