Bonjour, Code qui fonctionne, permettant de filtrer une connexion Query vers une base Access, en revanche je ne parviens pas à trouver la solution pour couper la connexion avec la BDD après rafraichissement. (afin que la base soit dispo pour un autre utilisateur)... Des solutions? Merci d'avance!....
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
37
38
39
40
41
42
43
44
45
46
47
48 Sub REQSQL() '-------------------------------------------------PRINCIPE DE FONCTIONNEMENT----------------------------------------------------' ' ' ' Permet d'extraire des données d'une requête/table selon une variable précise (exemple convention) ' ' ' ' '-------------------------------------------------------------------------------------------------------------------------------' Dim Nomconnect As Variant 'Nom de la connexion établie dans excel Dim connect As Variant 'Chemin et nom de la BDD Access Dim reqconv As Variant 'Emplacement de la variable recherchée Dim dimconv As Variant 'Dimension de la table/requête selectionnée Dim rq As Variant 'table/requête selectionnée Dim cmdsql As Variant 'Commande SQL Application.ScreenUpdating = False ' ** ' ********** ' ** '----------------------------------------------------PARAMETRAGES------------------------------------------------------ Nomconnect = "DataTest - CONDITIONS" connect = "\\mg21\DataTest.accdb" reqconv = ActiveWorkbook.Worksheets("CONTRAT").Range("C3").Value dimconv = "CONV" rq = "CONDITIONS" cmdsql = "SELECT * FROM " & rq & " WHERE " & rq & "." & dimconv & " = (""" & reqconv & """)" ' ** ' ********** ' ** '-------------------------------------------------------REQUETE---------------------------------------------------------- With ActiveWorkbook.Connections(Nomconnect).OLEDBConnection .CommandText = Array(cmdsql) .Connection = Array("OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & connect) .ServerCredentialsMethod = xlCredentialsMethodIntegrated End With ActiveWorkbook.Connections(Nomconnect).Refresh '-------------------------------------------------------FIN-------------------------------------------------------------- Application.ScreenUpdating = True End Sub
Partager