Bonjour à tous,

Voilà, je tourne en rond depuis plusieurs heures sans trouver de solutions... Je viens donc ici pour tenter de trouver un sauveur !!!

Mon problème est le suivant:
J'ai un classeur Excel avec 1 TCD par feuille alimentée par des bases ACCESS différentes en fonction des feuilles (en tout 4 bases). Dans chaque base ACCESS, j'ai divisé mes données en plusieurs tables distinctes. Ce que je souhaite faire c'est modifier la connexion de mes TCD et non pas la source. En effet par exemple les 3 premières feuilles par exemple traitent de la casse logistique. Dans ma base ACCESS j'ai divisé ces données en différentes catégories (SEC, FRAIS, GEL) et j'ai ainsi créé 3 tables au sein de cette même base. Je souhaite mettre en réseau cette base et trouver un code qui me permettra de cliquer sur un bouton modifiant la connexion de mes TCD à la table SEC FRAIS OU GEL pour les différents utilisateurs ayant accès au réseau.

Pour le moment j'ai enregistré une macro avec l'enregistreur qui me modifie la connexion mais celle ci est à mon avis incomplète et elle bug.

Merci d'avance pour votre patience et le temps que vous m’accorderez.

Mon code:


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
Sub SEC()
'
' SEC Macro
'
 
'
    With ActiveWorkbook.Connections("REPORT TEST1").OLEDBConnection
        .BackgroundQuery = True
        .CommandText = Array("REPORTING CASSE 2015 SEC")
        .CommandType = xlCmdTable
        .Connection = Array( _
        "OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;Password="""";User ID=Admin;Data Source=T:\Itmaf\Appros-Flux\5-Reporting\REPORTING CDG\TEST\REPO" _
        , _
        "RT TEST.accdb;Mode=Share Deny Write;Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Dat" _
        , _
        "abase Password="""";Jet OLEDB:Engine Type=6;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global" _
        , _
        " Bulk Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;" _
        , _
        "Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Suppor" _
        , "t Complex Data=False")
        .RefreshOnFileOpen = False
        .SavePassword = False
        .SourceConnectionFile = _
        "C:\Users\fcany\Documents\Mes sources de données\REPORT TEST REPORTING CASSE 2015 SEC.odc"
        .ServerCredentialsMethod = xlCredentialsMethodIntegrated
        .AlwaysUseConnectionFile = False
        .ServerFillColor = False
        .ServerFontStyle = False
        .ServerNumberFormat = False
        .ServerTextColor = False
    End With