For each et liste

Résolu
Robinwood01 Messages postés 153 Date d'inscription jeudi 25 avril 2002 Statut Membre Dernière intervention 3 juillet 2014 - 28 août 2006 à 17:27
Robinwood01 Messages postés 153 Date d'inscription jeudi 25 avril 2002 Statut Membre Dernière intervention 3 juillet 2014 - 29 août 2006 à 11:33
Bonjour

Je suis en train d'améliorer mon code afin de le simplifié, cependant je bloque à un endroits.

Voici ce que je souhaite faire, j'ai 10 fois le code ci dessous pour 10 listes différents.

Je ne souhaite pas faire une fonction mais plutot mettre ce code dans un for each et faire un tableau de liste.

J'ai tenté avec des array, ... mais je n'y arrive pas j'ai des type incompatible et d'autre erreurs.

 Do      If ((tmp_date txt_date_fin.Value) Or (resultat_tests True)) Then Exit Do
      tmp_date = DateAdd("d", 1, tmp_date)
      For i = 0 To liste_congés.ListCount - 1
            If (Len(liste_congés.Column(1, i)) = 10) Then                  If (liste_congés.Column(1, i) tmp_date) Then resultat_tests True
            ElseIf (DateInclu(tmp_date, Left(liste_congés.Column(1, i), 10), Right(liste_congés.Column(1, i), 10)) = True) Then
                   resultat_tests = True
           End If
      Next
Loop

Merci d'avance de m'aiguiller sur une solution efficace.

6 réponses

jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
29 août 2006 à 08:47
Salut,


Je persiste: POURQUOI NE PAS FAIRE UNE FONCTION


En plus ta boucle For each ne sert a rien ici puisque tu n'utilise meme pas la variable Liste dans la boucle.


Note:=> Tableau_Liste n'est pas une tableau de (type) Liste mais un tableau de String contenant le nom de tes Listes.


Solutions.


1- Faire une fonction.
2- Faire un vrai tableau de Liste








Dim Tableau_Liste(0 To 1) As ListBox 

Set Tableau_Liste(0) = List1 
Set Tableau_Liste(1) = List2 

Dim p 

For Each p In Tableau_Liste 
  .....







<small> Coloration syntaxique automatique [AFCK]</small>

       









 






@+,   Ju£i?n
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
28 août 2006 à 17:39
salut,

"Je ne souhaite pas faire une fonction mais plutot mettre ce code dans un for each et faire un tableau de liste."
- Pourquoi ne pas passer par une fonction , c'est a mon avis ce qu il y a de mieux.
- For each ?.... elle est ou ta boucle for each.

"J'ai tenté avec des array, ... mais je n'y arrive pas j'ai des type incompatible et d'autre erreurs."
-a quelles lignes tu as des type incompatible???






 






@+,   Ju£i?n
0
Robinwood01 Messages postés 153 Date d'inscription jeudi 25 avril 2002 Statut Membre Dernière intervention 3 juillet 2014
28 août 2006 à 21:25
Je voudrais faire ca :

dim tableau_liste

tableau_liste = array("liste1","liste2", ....)

For each liste in tableau_liste

 Do      If ((tmp_date txt_date_fin.Value) Or (resultat_tests True)) Then Exit Do
      tmp_date = DateAdd("d", 1, tmp_date)
      For i = 0 To liste_congés.ListCount - 1
            If (Len(liste_congés.Column(1, i)) = 10) Then                  If (liste_congés.Column(1, i) tmp_date) Then resultat_tests True
            ElseIf (DateInclu(tmp_date, Left(liste_congés.Column(1, i), 10), Right(liste_congés.Column(1, i), 10)) = True) Then
                   resultat_tests = True
           End If
      Next
Loop

Next
0
Robinwood01 Messages postés 153 Date d'inscription jeudi 25 avril 2002 Statut Membre Dernière intervention 3 juillet 2014
29 août 2006 à 10:12
Merci

Je trouve plus pratique une boucle, c'est pour ca que je veux pas la fonction.

Je fais des fonctions uniquement quand j'ai besoin du code a plusieurs endroit différent.

en faite je l'utilise liste mais je me suis trompé j'ai mis liste_congés dans le code alors que c'est liste.
0

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

Posez votre question
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
29 août 2006 à 10:27
Re,



.."Je fais des fonctions uniquement quand j'ai besoin du code a plusieurs endroit différent"...
..." j'ai 10 fois le code ci dessous pour 10 listes différents"... => Ceci n'est pas suffisant pour toi pour faire une fonction. enfin bref, le plus important est que tu es résolu ton problème et que cela fonctionne.
@+,   Ju£i?n
0
Robinwood01 Messages postés 153 Date d'inscription jeudi 25 avril 2002 Statut Membre Dernière intervention 3 juillet 2014
29 août 2006 à 11:33
Non tu ne m'as pas compris je pense.

Une fonction lorsque j'ai plusieurs fois le même code a différent endroit, différente fentere ...

Une boucle quand plusieur fois le même code l'un en dessous de l'autre.

Ca change pas grand chose mais c'est mon organisation.
0
Rejoignez-nous