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 38 39 40 41
| Sub macro1()
'Déclaration des variables
Dim cnx As ADODB.Connection
Dim rst As ADODB.Recordset
Dim query As String
'Instanciation des variables
Set cnx = New ADODB.Connection
Set rst = New ADODB.Recordset
'Définition du pilote de connexion
cnx.Provider = "Microsoft.Jet.Oledb.4.0"
'Définition de la chaîne de connexion
cnx.ConnectionString = "D:\Documents\DOC\mabase.MDB"
'Ouverture de la base de données
cnx.Open
'Ecriture de la requête
query = "SELECT DISTINCT com_el.sat_name, com_el.long_nom, freq.ntc_id, com_el.adm, com_el.prov, com_el.act_code, pub_ssn.ssn_ref " & _
"FROM (freq INNER JOIN com_el ON freq.ntc_id = com_el.ntc_id) INNER JOIN pub_ssn ON com_el.ntc_id = pub_ssn.ntc_id " & _
"WHERE (((com_el.adm) <> " & "F" & ")) " & _
"GROUP BY com_el.sat_name, com_el.long_nom, freq.ntc_id, com_el.adm, com_el.prov, com_el.act_code, pub_ssn.ssn_ref, freq.freq_mhz, pub_ssn.seq_no " & _
"HAVING (((com_el.prov)=" & "9.6" & ") AND ((com_el.act_code)=" & "A" & " Or (com_el.act_code)=" & "M" & ") AND ((pub_ssn.ssn_ref)=" & "CR/C" & ") AND ((pub_ssn.seq_no)=1) AND (([freq]![freq_mhz]) Between 17300 And 20200 Or ([freq]![freq_mhz]) Between 18100 And 18400 Or ([freq]![freq_mhz]) Between 24750 And 25250 Or ([freq]![freq_mhz]) Between 27000 And 31000)) " & _
"ORDER BY com_el.long_nom;"
'Exécution de la requête
rst.Open Kaquery, cnx
rst.MoveLast
rst.MoveFirst
While Not (rst.EOF)
rst.MoveNext
Wend
rst.Close
cnx.Close
End Sub |
Partager