Bonjour,

Je cherche à alimenter un datagrid en vb.net à partir d'une requête sql sur une base access. Avec le code suivant, je suis capable d'afficher la totalité de ma table :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Dim matable As New Datatable
        matable = ObjetDataSet.Tables("t_intervention")
        DataGrid1.DataSource = matable
Mais je voudrait afficher à partir d'une requête.

En VB6 je faisait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Dim cn As String
Dim db As String
Dim connect As ADODB.Connection
Dim rs As ADODB.Recordset
 
'alimentation du datagrid
Set connect = New ADODB.Connection
Set rs = New ADODB.Recordset
 
db = App.Path & "\Helpdesk.mdb"
 
' construction de la chaîne de connection
    cn = "driver={Microsoft Access Driver (*.mdb)};dbq=" & db & ";pwd=;"
' ouverture de la base de données avec cette connexion
    connect.Open cn
 
' ouverture du recordset avec la requête SQL intégrée
rs.Open "SELECT num_intervention AS NUMERO, nom_utilisateur AS UTILISATEUR, antenne AS ANTENNES, date_ouverture AS OUVERTURE, date_cloture AS CLOTURE, cloturer AS CLOS FROM T_intervention WHERE (cloturer<>'OUI') ORDER BY date_ouverture", connect, adOpenKeyset, adLockOptimistic
 
'alimentation du datagrid et redimensionnement
If rs.RecordCount <> 0 Then
Set DataGrid1.DataSource = rs
    DataGrid1.Refresh
    DataGrid1.Columns(0).Width = 1000
    DataGrid1.Columns(1).Width = 2500
    DataGrid1.Columns(2).Width = 1500
    DataGrid1.Columns(3).Width = 1200
    DataGrid1.Columns(4).Width = 1200
    DataGrid1.Columns(5).Width = 600
Else
   Set DataGrid1.DataSource = rs
    DataGrid1.Refresh
End If
 
Set rs = Nothing
Set connect = Nothing
Merci d'avance