Obtenir un nombre record en -1 dans VBA

J'ai le code suivant dans Excel VBA. Lorsque j'ajoute une montre sur RecordSet, il affiche toujours un nombre d'loggings en -1. En fait, il devrait montrer 3. J'ai vérifié les champs dans le jeu d'loggings (en ajoutant une montre) et il affiche les noms de champs corrects.

Sub ConnectSqlServer() Dim oConn As ADODB.Connection Dim rs As ADODB.Recordset Dim sConnSsortingng As Ssortingng 'Create connection ssortingng sConnSsortingng = "Provider=sqloledb; Server=D-SRVR; Database=test; Trusted_Connection=True; Integrated Security=SSPI;" 'Create the Connection and Recordset objects Set oConn = New ADODB.Connection Set rs = New ADODB.Recordset 'Open connection and execute oConn.Open sConnSsortingng Set rs = oConn.Execute("SELECT top 3 * from employee;") End Sub 

Par MSDN (ici: https://msdn.microsoft.com/en-us/library/ms676701(v=vs.85).aspx )

Le type de slider de l'object Recordset affecte si le nombre d'loggings peut être déterminé. La propriété RecordCount renverra -1 pour un slider en avant uniquement; le count réel d'un slider statique ou d'un keyboard; et soit -1 ou le count réel pour un slider dynamic, selon la source de données.

Ryan Farley a écrit cet article ( http://www.slxdeveloper.com/page.aspx?action=viewarticle&articleid=33 ) où il explique comment get un count d'logging à partir d'un jeu d'loggings ADO. Ça marche pour moi.

PS Désolé mon anglais