Bonjour à tous,
voilà mon souci, je dispose d'un tableau dans lequel la première colonne correspond à des employés, la deuxième à leur division, et les colonnes de F à O aux jours pour lesquels l'employé se porte volontaire.
En ne considérant qu'une seule colonne, j'ai écrit la fonction suivante :
Function election(division As String, nb_elus As Integer, nb_col As Integer)
Dim i As Integer
Dim indice As Integer
Dim employe(300) As String
indice = 0
While indice < nb_elus
For i = 8 to 144
If Cells(i, 2).Value = division And Cells(i, nb_col).Value = "X" Then
employe(indice)=Cells(i, 1).Value
MsgBox employe(indice)
indice = indice + 1
End If
Next
Wend
End Function
Le souci, c'est que quand je lance ma fonction avec
Call election("D1", 2, 6)
la fonction me ressort tous les employés qui ont coché la case avec "X" et non pas les deux employés que je définis dans la fonction.
Vous auriez une idée pour que je n'ai que mes deux employés qui soient signalés ?
voilà mon souci, je dispose d'un tableau dans lequel la première colonne correspond à des employés, la deuxième à leur division, et les colonnes de F à O aux jours pour lesquels l'employé se porte volontaire.
En ne considérant qu'une seule colonne, j'ai écrit la fonction suivante :
Function election(division As String, nb_elus As Integer, nb_col As Integer)
Dim i As Integer
Dim indice As Integer
Dim employe(300) As String
indice = 0
While indice < nb_elus
For i = 8 to 144
If Cells(i, 2).Value = division And Cells(i, nb_col).Value = "X" Then
employe(indice)=Cells(i, 1).Value
MsgBox employe(indice)
indice = indice + 1
End If
Next
Wend
End Function
Le souci, c'est que quand je lance ma fonction avec
Call election("D1", 2, 6)
la fonction me ressort tous les employés qui ont coché la case avec "X" et non pas les deux employés que je définis dans la fonction.
Vous auriez une idée pour que je n'ai que mes deux employés qui soient signalés ?