Problème de requête sql

Problème de requête sql - VB/VBA/VBS - Programmation

Marsh Posté le 11-08-2010 à 15:56:32    

salut les amis.
j'ai un problème avec une requête sql dans mon code Vb :
 
 
Sub ouvrir_remplir()
 
ObjetConnection = New OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=C:\stage_ocp.mdb" )
ObjetConnection.Open()
'récuperation de la ligne correpondante au repère choisi (Le repère est la clé primaire)
ObjetCommand = New OleDbCommand("select * from Transmetteur_de_pression where Repère='" & Combox1.text & "'" )
ObjetCommand.Connection = ObjetConnection
ObjetDataAdapter = New OleDbDataAdapter(ObjetCommand)
ObjetDataAdapter.Fill(ObjetDataSet, "Transmetteur_de_pression" )
ObjetDataTable = ObjetDataSet.Tables("Transmetteur_de_pression" )
Dim j As Integer = 0
Dim i As Integer = 0
'Déclaration des variables
Dim appExcel As Excel.Application 'Application Excel
Dim wbExcel As Excel.Workbook 'Classeur Excel
Dim wsExcel As Excel.Worksheet 'Feuille Excel
'Ouverture de l'application
appExcel = CreateObject("Excel.Application" )
'Ouverture d'un fichier Excel (déjà crée)
wbExcel = appExcel.Workbooks.Open("G:\fichier.xls" )
'wsExcel correspond à la première feuille du fichier
wsExcel = wbExcel.Worksheets(1)
For j = 0 To 70
i = j + 1
wsExcel.Cells(i, 3) = ObjetDataTable.Rows(0).Item(j)
Next
ObjetConnection.Close()
wbExcel.Close()
 
End Sub
 
 
pour moi je me suis dis que ObjetDataTable.Rows(0).Item(j) (j variant de 0 à ObjetDataTable.Columns.count-1) contient une seule ligne qui est celle de la requête puisque "Repère" est une clé primaire alors que j'ai découvert autre chose, c'est que quand je fais entrer un repère donné (biensûr déjà existant dans ma base de données) le code m'imprime (dans mon fichier excel) une ligne autre que celle correspondante à mon repère choisi .
 
 
Merci d'avance pour vos participations.

Reply

Marsh Posté le 11-08-2010 à 15:56:32   

Reply

Marsh Posté le 11-08-2010 à 16:11:43    

Que retourne Debug.print(Combox1.text)?
ComboBox est une liste déroulante ou une liste tout court:
- si liste déroulante DEbug.print ComboBox
- si liste tout court  debug.print ComboBox.ItemData(0)
Insère un stop avant l'exécution de la requête

Reply

Marsh Posté le 11-08-2010 à 18:00:37    

@MerryvoRA:
 
j'ai déjà pensé à ce truc et j'ai fais un Msgbox(Combox1.text) avant juste la requête et ça affiché bien le repère que j'ai choisi dans ma liste.
 
ps : je ne sais kel différence entre liste déroulante et liste tout court!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed