extraire le chemin d'un table attaché en VBA
Le
dumgest

bonjour
je ne trouve pas comment extraire le chemin d'un table attaché en VBA sou=
s Acc2007
je suis sur que cela dois être quelques part, non ??
merçi de votre aide pour trouver le chemin
remdumdum
je ne trouve pas comment extraire le chemin d'un table attaché en VBA sou=
s Acc2007
je suis sur que cela dois être quelques part, non ??
merçi de votre aide pour trouver le chemin
remdumdum
Bonsoir,
Si c'est une table liée dans une base Access distante, la base distante
et son chemin sont récupérés de la façpn suivante :
Base=DLookup("Database", "mSysObjects", "name='nom_de_la_table' and type=6")
Reste plus qu'à extraire le chemin.
db
j'ai un database de facade avec des tables attachées dans une seconde dat abase qui peut être situé n'importe où par l'utilisateur. (Hd, clef u sb, cloud)
je voudrais a la fermeture de la database de facade, faire une sauvegarde d e la seconde database contenant les tables sur le c: de l'utilisateur.
mais il faut que je recupere le chemin de la seconde database dans une tabl e attaché !!
avec votre solution "database" est le chemin de la table attaché ?
Base=DLookup("Database", "mSysObjects", "name='nom_de_la_table' and type=6")
Base contient le nom du fichier mdb distant (celui qui contient les
tables attachées) avec son chemin. Par exemple : D:Mes
DocumentsTravailTables.mdb
Mais le mieux est d'essayer pour voir ce que ça donne, non ?
db
voilà ma function
Function DumCopieC()
On Error GoTo DumCopieC_Err
Dim espDefault As Workspace, bds As Database
Dim dumo, dumd, base As String
Dim dbs As Database
'test si datacopy.accdb existe
dumo = "c:dumargestdatacopy.accdb"
If Dir([dumo]) <> "" Then Kill dumo
DoEvents
Set dbs = CurrentDb
dumd = "c:dumargestdumargest.accde"
base = DLookup("dbs", "adress", "adress and type=6")
' crée datacopy.accdb
FileCopy base, dumo
Beep
DumCopieC_Exit:
Exit Function
DumCopieC_Err:
MsgBox Error$
Resume DumCopieC_Exit
End Function
Remplacez : base = DLookup("dbs", "adress", "adress and type=6")
par :
base=DLookup("Database","MSysObjects","name='adress' and type=6")
MsysObjects est le nom de la table système d'Access
Database est le nom du champ de la table MsysObjects qui contient le nom
de la base distante
name='adress' and type=6 : condition (Where) qui sert à trouver la bonne
ligne dans la table MSysObjects
db
ça marche !! grand merci d'avoir aidez petit scarabée à trouver le ch emin !!
remdumdum
Function DumCopieC()
On Error GoTo DumCopieC_Err
Dim dumo, base As String
'test si datacopy.accdb existe
dumo = "c:dumargestdatacopy.accdb"
If Dir([dumo]) <> "" Then Kill dumo
DoEvents
base = DLookup("Database", "MSysObjects", "name='adress' and type =6")
' crée datacopy.accdb
FileCopy base, dumo
Beep
DumCopieC_Exit:
Exit Function
DumCopieC_Err:
MsgBox Error$
Resume DumCopieC_Exit
End Function