Bonjour
J'obtiens l'erreur runtime 3265 « impossible de trouver l'objet correspondant au nom ou à la référence ordinale demandée »
La fonction parcourt un recordset
rsCombi qui contient des règles de combinaisons du genre i
tem1 * item2 * item3 et un recordset
elvar qui contient des mots à remplacer dans la règle
item1 * item2 * item3Le problème vient de la boucle de lecture du recordset
elvar: quand le champ est en dur, ca marche quand c'est générique, c'est l'erreur 3265.
Merci d'avance
Function fCombi(sourceA As String)
Dim i As Integer
Const MAXELVAR = 2
Dim rsCombi As New ADODB.Recordset
Dim elvar(1 To MAXELVAR) As ADODB.Recordset
Dim élément(1 To MAXELVAR) As String
Dim NbElVar As Integer
Dim maCombi As String
i = 0
For i = 1 To MAXELVAR
Set elvar(i) = New ADODB.Recordset
Next i
conUserCombi_Connect
rsCombi.Open "SELECT * FROM Combinaisons ;", cnxCombi
rsCombi.MoveFirst
Do Until rsCombi.EOF
NbElVar = rsCombi("Nmot")
maCombi = rsCombi("Regle")
For i = 1 To NbElVar
elvar(i).Open "SELECT * FROM Mots ;", cnx
elvar(i).MoveFirst
Next i
For i = NbElVar + 1 To MAXELVAR
elvar(i).Open "SELECT Expression FROM tblOneRow;", cnx
elvar(i).MoveFirst
Next i
Do Until elvar(1).EOF
If IsNull(elvar(1)("mot1")) Then Exit Do
élément(1) = elvar(1)("mot1") '
OK c'est le nom en dur du champ élément(1) = elvar(1)(rsCombi(« Mot1 ») '
KO nom générique, affiche "mot1", ( OK)
élément(1) = elvar(1)(rsCombi(5))
'KO n° du champ, affiche "mot1" (OK)