Problème dans un datareader
Bonjour,
Je souhaiterais récupérer des enregistrements dans des bases access mais j'ai un problème sur mon datareader que je n'arrive pas à identifier.
Voici mon code:
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 32 33 34 35 36 37
| Dim monStreamReader As New StreamReader(Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) & "\liste.txt") 'Stream pour la lecture
Dim ligne As String ' Variable contenant le texte de la ligne
Dim strRequete
Dim j As Integer = 1
strRequete = "SELECT * FROM DClient WHERE 'Date creation' > #" & DateDebut.Text & "# AND 'Date creation' < #" & DateFin.Text & "#"
'ouvrir Excel
Dim ex As New Excel.Application
'Dim WB As New Excel.Workbook
Dim NomExcel, MyDocumentFolder As String
Dim WS As Excel.Worksheet
MyDocumentFolder = Environment.GetFolderPath(System.Environment.SpecialFolder.Personal)
NomExcel = MyDocumentFolder & "\CA-" & Date.Today & ".xls"
NomExcel = Replace(NomExcel, "/", "-")
Dim WB = ex.Workbooks.Open(NomExcel)
WS = WB.Worksheets(1)
ex.Visible = True
Do
ligne = monStreamReader.ReadLine
'ouverture base access
Dim MyConnexion As OleDb.OleDbConnection
MyConnexion = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & ligne)
Dim oCommand As New OleDb.OleDbCommand(strRequete, MyConnexion)
MyConnexion.Open()
'requete sur la base access
Dim oReader As OleDb.OleDbDataReader = oCommand.ExecuteReader()
Dim i As Integer = oReader.FieldCount
While oReader.Read()
'Mettre Dans Excel
For k = 1 To i
WS.Cells(j, k) = oReader.GetString(k - 1)
Next k
j = j + 1
End While
oReader.Close()
MyConnexion.Close()
Loop Until ligne Is Nothing
monStreamReader.Close() |
Je ne rentre jamais dans le for alors que sur le deuxieme passage je suis sur que ma base et la requete contiennent un enregistrement.
Quelqu'un pour m'aider?
Merci.