Bon, et bien après quelques heures de ténacité, j'ai finit par résoudre mon problème, il s'agit d'utiliser :
un tableau dynamique, et de le dimensionner à volonté
Voici ce que cela donne :
Public nb_enr As Integer
Public Indicateur() As Variant ' tableau dynamique stockant des Paramètres
Public Sub Formulaire_Selection()
Dim Db3 As Database
Dim Rs3 As Recordset
Set Db3 = DBEngine.OpenDatabase(ThisWorkbook.Path & Repertoire)
Set Rs3 = Db3.OpenRecordset("Req_MAJ Excel", dbOpenDynaset)
' Alimentation des champs de critères de sélection
If Not Rs3.EOF Then
Rs3.MoveFirst
Do
Criteres_selection.Liste_Indicateur.AddItem (Rs3![Code Indicateur])
Rs3.MoveNext
Loop Until Rs3.EOF
' Calcul du nombre d'enregistrements retourné par la requête
nb_enr = Rs3.RecordCount
End If
End Sub
Public Sub Formulaire_Selection_Validation()
Dim cpt As Single ' Compteur de boucle
ReDim Indicateur(nb_enr) ' Alloue nb_enr ligne au tableau
For cpt = 0 To (Criteres_selection.Liste_Indicateur.ListCount - 1)
If Criteres_selection.Liste_Indicateur.Selected(cpt) = True Then
Indicateur(cpt) = Criteres_selection.Liste_Indicateur.List(cpt)
End If
Next cpt
End Sub
Et voilà, tout seul, comme un grand.
Ludovic.
Victory. (mais reste à paramétrer une requête access via Excel ce qui risque d'être "coton" à automatiser au maximum car c'est le but de mon programme)