Soit une table "Fonds" entretenant une relation 1-n avec une tables
"Objets". Depuis ma base je g=E8re des r=E9pertoires reproduisant cette
hi=E9rarchie : la d=E9nomination des r=E9pertoires fonds utilisant le champ
"Abreviation" de ma table Fonds et la d=E9nomination des sous-
r=E9pertoires Objets reprenant le nom du champ "RefObjet" de ma table
Objets. (les sous-r=E9pertoires objets contiennent la plupart du temps
des fichiers images illustrant les "objets" en question... qui sont en
fait des projets d'architecture).
Pour =E9viter que l'on modifie une r=E9f=E9rence objet (ou qu'on la
supprime) - et ce faisant que l'on compromette les liens existant
entre ma base et ces r=E9pertoires, j'ai mis en place un code qui
v=E9rifie l'existence des r=E9pertoires en cas de modification ou
suppression des objets...
Tout marche parfaitement, sauf avec un fonds qui a la particularit=E9 de
contenir beaucoup plus que des fichiers images, mais =E9norm=E9ment de
fichiers de toutes sortes (fichiers de CAO, fichiers textes, excell,
etc.), en fait ce sont toutes les archives num=E9riques d'une agence
d'architecte...
L=E0 le code suivant fait compl=E8tement planter la base (ne r=E9ponds
plus...) : pourquoi ???
Merci de votre aide,
Dim RepFonds As String
RepFonds =3D "I:\" & Me![Abreviation]
Dim NomRepObjet As String
NomRepObjet =3D Me![Refobjet]
'VERIFICATION DE L'EXISTENCE DU REPERTOIRE OBJET
'd=E9finition chemin
Dim cheminrechObjet As String
cheminrechObjet =3D fnSearchFolder(RepFonds, NomRepObjet) 'on
v=E9rifie d'abord que le r=E9pertoire Objet existe
If cheminrechObjet <> "" Then 's'il existe un r=E9pertoire Objet
MsgBox "Impossible de supprimer cet objet car il existe un
r=E9pertoire li=E9 dans I: Celui-ci va s'ouvrir pour vous permettre de
v=E9rifier son contenu (vous ne pourrez supprimer l'objet que si le
r=E9pertoire n'existe plus !", vbInformation, "IMPOSSIBLE DE SUPPRIMER
L'OBJET : REPERTOIRE LIE !"
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
gauso
Il suffit parfois de poser la question pour trouver la réponse... En utilisant pas fnSearchFolder, tout va beaucoup mieux ! Bonne journée,
Voici ce qui a marché : Dim RepFonds As String RepFonds = "I:" & Me![Abreviation] Dim NomRepObjet As String NomRepObjet = Me![Refobjet]
'VERIFICATION DE L'EXISTENCE DU REPERTOIRE OBJET If dir(RepFonds & "" & NomRepObjet & "", vbDirectory) <> "" Then MsgBox "Impossible de supprimer cet objet ...!", vbInformation, "IMPOSSIBLE DE SUPPRIMER L'OBJET : REPERTOIRE LIE !"
Il suffit parfois de poser la question pour trouver la réponse...
En utilisant pas fnSearchFolder, tout va beaucoup mieux !
Bonne journée,
Voici ce qui a marché :
Dim RepFonds As String
RepFonds = "I:" & Me![Abreviation]
Dim NomRepObjet As String
NomRepObjet = Me![Refobjet]
'VERIFICATION DE L'EXISTENCE DU REPERTOIRE OBJET
If dir(RepFonds & "" & NomRepObjet & "", vbDirectory) <> ""
Then
MsgBox "Impossible de supprimer cet objet ...!",
vbInformation, "IMPOSSIBLE DE SUPPRIMER L'OBJET : REPERTOIRE LIE !"
Il suffit parfois de poser la question pour trouver la réponse... En utilisant pas fnSearchFolder, tout va beaucoup mieux ! Bonne journée,
Voici ce qui a marché : Dim RepFonds As String RepFonds = "I:" & Me![Abreviation] Dim NomRepObjet As String NomRepObjet = Me![Refobjet]
'VERIFICATION DE L'EXISTENCE DU REPERTOIRE OBJET If dir(RepFonds & "" & NomRepObjet & "", vbDirectory) <> "" Then MsgBox "Impossible de supprimer cet objet ...!", vbInformation, "IMPOSSIBLE DE SUPPRIMER L'OBJET : REPERTOIRE LIE !"