Acceder a une function

Messages postés
28
Date d'inscription
jeudi 12 janvier 2006
Statut
Membre
Dernière intervention
31 août 2006
-
Messages postés
53
Date d'inscription
mardi 3 janvier 2006
Statut
Membre
Dernière intervention
20 mars 2008
-
j'ai une petite question , je viens de créé une function veri() , mais je ne sais pas comment y aller depuis une command. sauriez vous m'aider??

Voici la function veri()
Function veri()If i 35 Or i 28 Or i = 21 Or i = 14 Or i = 7 Or i = 0 Or i = 36 Or i = 29 Or i = 22 Or i = 15 Or i = 8 Or i = 1 Or i = 37 Or i = 38 Or i = 30 Or i = 31 Or i = 23 Or i = 24 Or i = 16 Or i = 17 Or i = 9 Or i = 10 Or i = 2 Or i = 3 Then
   If Label1(i).BackColor = &HC0& Then
      If Label1(i + 1).BackColor = &HC0& Then
         If Label1(i + 2).BackColor = &HC0& Then
            If Label1(i + 3).BackColor = &HC0& Then
               MsgBox "Vous avez gagné"
               Else
            End If
         End If
      End If
   End If
Else
If Label1(i).BackColor = &HC0C0& Then
   If Label1(i + 1).BackColor = &HC0C0& Then
      If Label1(i + 2).BackColor = &HC0C0& Then
         If Label1(i + 3).BackColor = &HC0C0& Then
            MsgBox " Vous avez gagné"
            Else
         End If
      End If
   End If
End If
End If


End Function

et ma commande
'&H8000000F& blanc
'&H000000C0& rouge
'&H0000C0C0& jaune
Private Sub cmd_1_click()
For z = 0 To 41
If Label1(z).BackColor = &HC0& Then
a = a + 1
ElseIf Label1(z).BackColor = &HC0C0& Then
b = b + 1
Else
End If
If a > b Then
flag = 2
Else
flag = 1
End If
Next z
For i = 35 To 0 Step -7
 If Label1(i).BackColor = &H8000000F Then
    If flag = 1 Then
       Label1(i).BackColor = &HC0&
       flag = 2
       Exit Sub
       Else
       Label1(i).BackColor = &HC0C0&
       flag = 1
       Exit Sub
    End If
    Else
End If
Next i
'GoTo veri
End Sub

merci pour votre aide

max

3 réponses

Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
Ben,
Call veri



Kenji



Il était une fois, un pauvre petit règlement que personne ne lisait. Il est tout sympa mais il est triste, aidez-le, lisez-le, ca lui ferait plaisir ainsi qu'a n
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut


Et bien si ta fonction veri est dans la meme page que ton bouton fait simplement


veri au lieu de goto veri.


Ou alors Call Veri





: Règlement
=>
:Moteur de recherche
Messages postés
53
Date d'inscription
mardi 3 janvier 2006
Statut
Membre
Dernière intervention
20 mars 2008

Bonjour
tout d'abord essayer de nous donner une idée de ton prog
mais je vais te montre qq trucs ici
1- pour la longue IF dans la fonction veri() tu peus la remplaçer par:
           select case i
                   case 0,1,2,3,7,8,9,10,14,15,16,17,21,22,23,24,28,29,30,31,35,36,37,38
                          .....
                            ...
             end select
           ou simplement par :
             if i Mod 7 < 4 then
                      ......
              end if  

2-Eviter d'inserer les bloc Else End if  quand il y'a rien d'instructions dedant
3- Si veri() est consedirée comme une fonction elle doit :
            *Avoir un type de sortie : [function veri() as ? ]
            *Retourner quelque resultat (veri= ta_resulat)
   Et c'est pas ton cas. alors Veri() sera declarée comme une procedure [Sub Veri()]
 
4- La variable i n'est pas declarée dans Veri() alors il porte n'import quelle valeur (inconnue), et la tu ne peu pas l'utiliser dans la comparaison parcequ'il est peut etre hors limite  (>0  ou <41)
   alors il faut :
      -Soit declarer et initialiser la valeur de i
      - Soit passer le comme un parametre a [Sub Veri(i as integer)]
      -Soit declarer i et encapsuler tout le bloc dans une boocle :  for i=0 to 41  ......  Next i 
 

Pour l'appel du fonction ou procedure sa differe un peut
    *Pour les procedures:
                         .....
                          CALL nom_proc([params])       /*s'il ya des parametres*/
          Ou :        nom_proc [params]                /*idem*/

   *Pour les fonctions
                -soit comme les procedures /* si on vout pas recuperer ses resultats*/
               - soi   Variable = nom_fonct([param])   /*Si on veut recuperer le resultat*/

a b1 to