Caractère spécial fait planter l'alimentation d'un combobox
Bonjour à tous,
Je vous soumets le problème suivant car je ne trouve pas de solution malgré beaucoup de recherches sur le net.
J'ai donc une base Access avec un formulaire qui contient un contrôle Combobox. A l'ouverture du formulaire je charge la liste de valeur de mon combobx à partir d'un recordset ADO qui pointe sur une base de données MS SQL Server. J'utilise pour cela la méthode additem de mon combobox. J'ai constaté que le chargement de ma liste de valeur s'arrêtait avant la fin de mon recordset, lorsque l'enregistrement du recordset à ajouter contenait un caractèrs spéciale (ü ou ä par exemple). ça ne fait pas planter le chargement mais je me retrouve avec une liste de valeur incomplète.
Je me doute qu'il s'agit d'un problème d'encodage entre MS SQL (qui je crois utilise un encodage Latin) et Access qui doit utiliser mes paramètres d'encodage MS WIndows 10, mais je n'arrive pas à résoudre le pb. Je joins le bout de code du chargement de mon combobox.
Merci d'avance à tous celles et ceux qui pourront m'aider !
Stargates
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
Public Sub getListClient(lst As ComboBox)
With lst
.RowSourceType = "Value list"
.BoundColumn = 1
.ColumnCount = 1
.ColumnWidths = "5"
End With
Dim cmd As New ADODB.Command
cmd.ActiveConnection = cn 'cn est une connexion ODBC vers ma base SQL
cmd.CommandType = adCmdText
cmd.CommandText = "SELECT ClientName FROM dbo.Client order by ClientName asc"
Dim rs As New ADODB.Recordset
Set rs = cmd.Execute
If Not rs.EOF Then rs.MoveFirst
While Not rs.EOF
lst.AddItem rs(0)
rs.MoveNext
Wend
rs.Close
Set rs = Nothing
Set cmd = Nothing
End Sub |