Bonjour à tous voici un petit extrait de mon code où j'ai commenté les différentes étapes jusqu'au moment ou je suis bloqué. C'est la première fois que je poste sur un forum mais la vraiment je ne vois pas. J'espère que ça inspira quelqu'un. Au fait la variable que je passe dans ma requête est 1Y ou 3Y ou 5Y. Quand je la passe en dur dans ma requête je la récupère ensuite de cette manière par exemple Tabinput(4, i) = ![1Y] et ça fonctionne très bien.
Private Sub CommandButton1_Click()
''''ICI j'ouvre ma base de données Access pas de problème
Set DB = OpenDatabase("C:\Users\hugo\Documents\ProjetVBA.accdb")
'''Puis j'écris ma requête SQL avant de l'éxecute avec comme variable le combobox4.value qui correspond
'''à un des champs présent dans ma table rating.Toujours aucun problème.
strSQL = "SELECT Input.Id, Input.Exposure, Input.LGD, Rating.[" & Combobox4.value & "], Sector.Correlation " & _
"FROM Param, ([Input] INNER JOIN Rating ON Input.Rating = Rating.Rating) INNER JOIN Sector ON Input.Sector = Sector.Sector;"
''J'éxécute la requète pas de problème non plus
Set resultat = DB.OpenRecordset(strSQL)
''je récuprère la valeur de mon combobox dans une variable
RatingYear = ComboBox4.Value
'''Et la plus rien ne va, au moment ou je remplis les résultats de ma requête dans mon tableau
'''Tabinput impossible VBA pour de lire correctement RatingYear ou combobox4.value ou .text j'ai tout
'''essayé en bouclant avec un for each Field rien ne marche. Si quelqu'un peut m'aider je suis ouvert
'''à toute proposition
resultat.MoveFirst
i = 0
While Not resultat.EOF
i = i + 1
With resultat
Tabinput(1, i) = !ID
Tabinput(2, i) = !Exposure
Tabinput(3, i) = !LGD
'''''''''''''''''Ligne qui ne marche pas'''''''''
Tabinput(4, i) = "!" & RatingYear
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Tabinput(5, i) = !Correlation
End With
resultat.MoveNext
Wend
end sub