Bonjour,
Je travaille sous Access XP.
Est-il possible d'attacher (lier) des tables contenu dans des bases externes en mettant non pas le
chemin absolu mais plutôt un chemin relatif ?
Car sinon à chaque fois que l'on déplace les bases (ensemble) d'un répertoire à un autre, on est
obligé de refaire l'attachement.
Je crois que je suis pas le premier à avoir ce pb non ?
Merci de votre aide !
Fabien
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jessy Sempere [MVP]
Bonjour
en fait tu dois procéder en 3 étapes :
1°) Vérifier à l'ouverture de la base si les attaches sont bonnes ou non, tu peux utiliser un code de ce type par exemple :
Public Function VerifAttache(strTbl As String) As Boolean '** Vérification des attaches de tables On Error Resume Next Dim rst As Recordset Set rst = CurrentDb.OpenRecordset(strTbl) If Err = 0 Then VerifAttache = True Else VerifAttache = False End If End Function
2°) Si la fonction retourne False, tu peux remettre à jour en utilisant un code de ce type :
Public Function ActualiserAttaches(strDb As String) As Boolean '** Actualisation des attaches de tables qui se trouve '** dans la base de donnée spécifiée dans "strDb" Dim db As Database Dim tdf As TableDef Dim tdfNew As TableDef
Set db = OpenDatabase(strDb) For Each tdf In db.TableDefs Set tdfNew = CurrentDb.TableDefs(tdf.name) tdfNew.Connect = ";DATABASE=" & strDb Err = 0 On Error Resume Next tdfNew.RefreshLink If Err <> 0 Then: ActualiserAttaches = False: Exit Function Next ActualiserAttaches = True
End Function
3°) Si tu veux par contre permettre à l'utilisateur de choisr le fichier où se trouve les tables, tu peux regarder ceci :
------------------------------------ Site @ccess : http://access.jessy.free.fr/ Pour l'efficacité de tous : http://users.skynet.be/mpfa/ ------------------------------------ "StarFab" a écrit dans le message news: e#
Bonjour, Je travaille sous Access XP. Est-il possible d'attacher (lier) des tables contenu dans des bases externes en mettant non pas le
chemin absolu mais plutôt un chemin relatif ? Car sinon à chaque fois que l'on déplace les bases (ensemble) d'un répertoire à un autre, on est
obligé de refaire l'attachement. Je crois que je suis pas le premier à avoir ce pb non ? Merci de votre aide ! Fabien
Bonjour
en fait tu dois procéder en 3 étapes :
1°) Vérifier à l'ouverture de la base si les attaches sont bonnes ou non,
tu peux utiliser un code de ce type par exemple :
Public Function VerifAttache(strTbl As String) As Boolean
'** Vérification des attaches de tables
On Error Resume Next
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset(strTbl)
If Err = 0 Then
VerifAttache = True
Else
VerifAttache = False
End If
End Function
2°) Si la fonction retourne False, tu peux remettre à jour en utilisant un
code de ce type :
Public Function ActualiserAttaches(strDb As String) As Boolean
'** Actualisation des attaches de tables qui se trouve
'** dans la base de donnée spécifiée dans "strDb"
Dim db As Database
Dim tdf As TableDef
Dim tdfNew As TableDef
Set db = OpenDatabase(strDb)
For Each tdf In db.TableDefs
Set tdfNew = CurrentDb.TableDefs(tdf.name)
tdfNew.Connect = ";DATABASE=" & strDb
Err = 0
On Error Resume Next
tdfNew.RefreshLink
If Err <> 0 Then: ActualiserAttaches = False: Exit Function
Next
ActualiserAttaches = True
End Function
3°) Si tu veux par contre permettre à l'utilisateur de choisr le fichier où
se trouve les tables, tu peux regarder ceci :
@+
Jessy Sempere - Access MVP
news@access.fr.vu
------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"StarFab" <starfabnospam@noos.fr> a écrit dans le message news:
e#ZUL05MEHA.2716@tk2msftngp13.phx.gbl...
Bonjour,
Je travaille sous Access XP.
Est-il possible d'attacher (lier) des tables contenu dans des bases
externes en mettant non pas le
chemin absolu mais plutôt un chemin relatif ?
Car sinon à chaque fois que l'on déplace les bases (ensemble) d'un
répertoire à un autre, on est
obligé de refaire l'attachement.
Je crois que je suis pas le premier à avoir ce pb non ?
Merci de votre aide !
Fabien
1°) Vérifier à l'ouverture de la base si les attaches sont bonnes ou non, tu peux utiliser un code de ce type par exemple :
Public Function VerifAttache(strTbl As String) As Boolean '** Vérification des attaches de tables On Error Resume Next Dim rst As Recordset Set rst = CurrentDb.OpenRecordset(strTbl) If Err = 0 Then VerifAttache = True Else VerifAttache = False End If End Function
2°) Si la fonction retourne False, tu peux remettre à jour en utilisant un code de ce type :
Public Function ActualiserAttaches(strDb As String) As Boolean '** Actualisation des attaches de tables qui se trouve '** dans la base de donnée spécifiée dans "strDb" Dim db As Database Dim tdf As TableDef Dim tdfNew As TableDef
Set db = OpenDatabase(strDb) For Each tdf In db.TableDefs Set tdfNew = CurrentDb.TableDefs(tdf.name) tdfNew.Connect = ";DATABASE=" & strDb Err = 0 On Error Resume Next tdfNew.RefreshLink If Err <> 0 Then: ActualiserAttaches = False: Exit Function Next ActualiserAttaches = True
End Function
3°) Si tu veux par contre permettre à l'utilisateur de choisr le fichier où se trouve les tables, tu peux regarder ceci :
------------------------------------ Site @ccess : http://access.jessy.free.fr/ Pour l'efficacité de tous : http://users.skynet.be/mpfa/ ------------------------------------ "StarFab" a écrit dans le message news: e#
Bonjour, Je travaille sous Access XP. Est-il possible d'attacher (lier) des tables contenu dans des bases externes en mettant non pas le
chemin absolu mais plutôt un chemin relatif ? Car sinon à chaque fois que l'on déplace les bases (ensemble) d'un répertoire à un autre, on est
obligé de refaire l'attachement. Je crois que je suis pas le premier à avoir ce pb non ? Merci de votre aide ! Fabien
StarFab
Bonjour et merci de la réponse, j'ai 2 questions : 1) Je n'ai pas bien compris ce que fait la 2° fonction ? Comment fait-elle pour retrouver les bons fichiers ? 2) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin relatif comme dans de nombreux langages type "./Mabase.mdb" ?
Merci ! Fabien
"Jessy Sempere [MVP]" a écrit dans le message de news:c7fiks$oth$
Bonjour
en fait tu dois procéder en 3 étapes :
1°) Vérifier à l'ouverture de la base si les attaches sont bonnes ou non, tu peux utiliser un code de ce type par exemple :
Public Function VerifAttache(strTbl As String) As Boolean '** Vérification des attaches de tables On Error Resume Next Dim rst As Recordset Set rst = CurrentDb.OpenRecordset(strTbl) If Err = 0 Then VerifAttache = True Else VerifAttache = False End If End Function
2°) Si la fonction retourne False, tu peux remettre à jour en utilisant un code de ce type :
Public Function ActualiserAttaches(strDb As String) As Boolean '** Actualisation des attaches de tables qui se trouve '** dans la base de donnée spécifiée dans "strDb" Dim db As Database Dim tdf As TableDef Dim tdfNew As TableDef
Set db = OpenDatabase(strDb) For Each tdf In db.TableDefs Set tdfNew = CurrentDb.TableDefs(tdf.name) tdfNew.Connect = ";DATABASE=" & strDb Err = 0 On Error Resume Next tdfNew.RefreshLink If Err <> 0 Then: ActualiserAttaches = False: Exit Function Next ActualiserAttaches = True
End Function
3°) Si tu veux par contre permettre à l'utilisateur de choisr le fichier où se trouve les tables, tu peux regarder ceci :
------------------------------------ Site @ccess : http://access.jessy.free.fr/ Pour l'efficacité de tous : http://users.skynet.be/mpfa/ ------------------------------------ "StarFab" a écrit dans le message news: e#
Bonjour, Je travaille sous Access XP. Est-il possible d'attacher (lier) des tables contenu dans des bases externes en mettant non pas le
chemin absolu mais plutôt un chemin relatif ? Car sinon à chaque fois que l'on déplace les bases (ensemble) d'un répertoire à un autre, on est
obligé de refaire l'attachement. Je crois que je suis pas le premier à avoir ce pb non ? Merci de votre aide ! Fabien
Bonjour et merci de la réponse,
j'ai 2 questions :
1) Je n'ai pas bien compris ce que fait la 2° fonction ? Comment fait-elle pour retrouver les bons
fichiers ?
2) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin relatif comme dans de nombreux
langages type "./Mabase.mdb" ?
Merci !
Fabien
"Jessy Sempere [MVP]" <jessy.sempere@prg.sncf.fr> a écrit dans le message de
news:c7fiks$oth$1@muguet.sncf.fr...
Bonjour
en fait tu dois procéder en 3 étapes :
1°) Vérifier à l'ouverture de la base si les attaches sont bonnes ou non,
tu peux utiliser un code de ce type par exemple :
Public Function VerifAttache(strTbl As String) As Boolean
'** Vérification des attaches de tables
On Error Resume Next
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset(strTbl)
If Err = 0 Then
VerifAttache = True
Else
VerifAttache = False
End If
End Function
2°) Si la fonction retourne False, tu peux remettre à jour en utilisant un
code de ce type :
Public Function ActualiserAttaches(strDb As String) As Boolean
'** Actualisation des attaches de tables qui se trouve
'** dans la base de donnée spécifiée dans "strDb"
Dim db As Database
Dim tdf As TableDef
Dim tdfNew As TableDef
Set db = OpenDatabase(strDb)
For Each tdf In db.TableDefs
Set tdfNew = CurrentDb.TableDefs(tdf.name)
tdfNew.Connect = ";DATABASE=" & strDb
Err = 0
On Error Resume Next
tdfNew.RefreshLink
If Err <> 0 Then: ActualiserAttaches = False: Exit Function
Next
ActualiserAttaches = True
End Function
3°) Si tu veux par contre permettre à l'utilisateur de choisr le fichier où
se trouve les tables, tu peux regarder ceci :
@+
Jessy Sempere - Access MVP
news@access.fr.vu
------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"StarFab" <starfabnospam@noos.fr> a écrit dans le message news:
e#ZUL05MEHA.2716@tk2msftngp13.phx.gbl...
Bonjour,
Je travaille sous Access XP.
Est-il possible d'attacher (lier) des tables contenu dans des bases
externes en mettant non pas le
chemin absolu mais plutôt un chemin relatif ?
Car sinon à chaque fois que l'on déplace les bases (ensemble) d'un
répertoire à un autre, on est
obligé de refaire l'attachement.
Je crois que je suis pas le premier à avoir ce pb non ?
Merci de votre aide !
Fabien
Bonjour et merci de la réponse, j'ai 2 questions : 1) Je n'ai pas bien compris ce que fait la 2° fonction ? Comment fait-elle pour retrouver les bons fichiers ? 2) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin relatif comme dans de nombreux langages type "./Mabase.mdb" ?
Merci ! Fabien
"Jessy Sempere [MVP]" a écrit dans le message de news:c7fiks$oth$
Bonjour
en fait tu dois procéder en 3 étapes :
1°) Vérifier à l'ouverture de la base si les attaches sont bonnes ou non, tu peux utiliser un code de ce type par exemple :
Public Function VerifAttache(strTbl As String) As Boolean '** Vérification des attaches de tables On Error Resume Next Dim rst As Recordset Set rst = CurrentDb.OpenRecordset(strTbl) If Err = 0 Then VerifAttache = True Else VerifAttache = False End If End Function
2°) Si la fonction retourne False, tu peux remettre à jour en utilisant un code de ce type :
Public Function ActualiserAttaches(strDb As String) As Boolean '** Actualisation des attaches de tables qui se trouve '** dans la base de donnée spécifiée dans "strDb" Dim db As Database Dim tdf As TableDef Dim tdfNew As TableDef
Set db = OpenDatabase(strDb) For Each tdf In db.TableDefs Set tdfNew = CurrentDb.TableDefs(tdf.name) tdfNew.Connect = ";DATABASE=" & strDb Err = 0 On Error Resume Next tdfNew.RefreshLink If Err <> 0 Then: ActualiserAttaches = False: Exit Function Next ActualiserAttaches = True
End Function
3°) Si tu veux par contre permettre à l'utilisateur de choisr le fichier où se trouve les tables, tu peux regarder ceci :
------------------------------------ Site @ccess : http://access.jessy.free.fr/ Pour l'efficacité de tous : http://users.skynet.be/mpfa/ ------------------------------------ "StarFab" a écrit dans le message news: e#
Bonjour, Je travaille sous Access XP. Est-il possible d'attacher (lier) des tables contenu dans des bases externes en mettant non pas le
chemin absolu mais plutôt un chemin relatif ? Car sinon à chaque fois que l'on déplace les bases (ensemble) d'un répertoire à un autre, on est
obligé de refaire l'attachement. Je crois que je suis pas le premier à avoir ce pb non ? Merci de votre aide ! Fabien
Raymond [mvp]
Bonsoir.
) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin relatif comme dans de nombreux langages type "./Mabase.mdb" ?
Tu peux résoudre ce problème par les disques réseau que tu peux déclarer sur toutes les stations. Les attaches seront faites sur un disque précis sans tenir compte du chemin lui-même. les erreurs d'attache à ce niveau sont quasiment nulles.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"StarFab" a écrit dans le message de news:%
Bonjour et merci de la réponse, j'ai 2 questions : 1) Je n'ai pas bien compris ce que fait la 2° fonction ? Comment fait-elle pour retrouver les bons
fichiers ? 2) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin relatif comme dans de nombreux
langages type "./Mabase.mdb" ?
Merci ! Fabien
Bonsoir.
) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin relatif
comme dans de nombreux
langages type "./Mabase.mdb" ?
Tu peux résoudre ce problème par les disques réseau que tu peux déclarer sur
toutes les stations. Les attaches seront faites sur un disque précis sans
tenir compte du chemin lui-même. les erreurs d'attache à ce niveau sont
quasiment nulles.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"StarFab" <starfabnospam@noos.fr> a écrit dans le message de
news:%23C4x5AGNEHA.3192@TK2MSFTNGP11.phx.gbl...
Bonjour et merci de la réponse,
j'ai 2 questions :
1) Je n'ai pas bien compris ce que fait la 2° fonction ? Comment fait-elle
pour retrouver les bons
fichiers ?
2) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin
relatif comme dans de nombreux
) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin relatif comme dans de nombreux langages type "./Mabase.mdb" ?
Tu peux résoudre ce problème par les disques réseau que tu peux déclarer sur toutes les stations. Les attaches seront faites sur un disque précis sans tenir compte du chemin lui-même. les erreurs d'attache à ce niveau sont quasiment nulles.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"StarFab" a écrit dans le message de news:%
Bonjour et merci de la réponse, j'ai 2 questions : 1) Je n'ai pas bien compris ce que fait la 2° fonction ? Comment fait-elle pour retrouver les bons
fichiers ? 2) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin relatif comme dans de nombreux
langages type "./Mabase.mdb" ?
Merci ! Fabien
3stone
Salut,
"StarFab"
2) Par grand Dieu, N'y a-t-il pas moyen d'exprimer un simple chemin relatif comme dans de nombreux langages type "./Mabase.mdb" ?
Si c'est juste pour connaitre le repertoire ou se trouve la base...