[ACCESS] créer un chemin relatif à une image
Résolu
durahsel
Messages postés
88
Statut
Membre
-
vittirivizzik -
vittirivizzik -
Bonjour,
Je n'arrive pas à créer un chemin d'accès relatif à une image (dans ses propriétés).
Ex : mon fichier access se trouve dans le même répertoire que mes images ex : C:\access\
Le chemin d'accès à une image "image.jpg" est donc C:\access\image.jpg
Mais qd je vais déplacer mon dossier, l'image ne sera plus trouvée biensûr, car c'est un lien absolu !
J'ai essayé de créer un relatif en ne mettant que \image.jpg par exemple mais ça ne marche pas.
Que faire ???
Merci !
Durahsel
Je n'arrive pas à créer un chemin d'accès relatif à une image (dans ses propriétés).
Ex : mon fichier access se trouve dans le même répertoire que mes images ex : C:\access\
Le chemin d'accès à une image "image.jpg" est donc C:\access\image.jpg
Mais qd je vais déplacer mon dossier, l'image ne sera plus trouvée biensûr, car c'est un lien absolu !
J'ai essayé de créer un relatif en ne mettant que \image.jpg par exemple mais ça ne marche pas.
Que faire ???
Merci !
Durahsel
A voir également:
- [ACCESS] créer un chemin relatif à une image
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer un lien pour partager des photos - Guide
- Créer un compte gmail - Guide
- Créer une image iso - Guide
9 réponses
Private Sub Form_Load() Image0.Picture = Application.CurrentProject.Path & "\images\monimage.jpg" End Sub
durahsel
Messages postés
88
Statut
Membre
11
ok je vais essayer ça merci !
Bonjour,
Mais qd je vais déplacer mon dossier, l'image ne sera plus trouvée biensûr
Mais si, elle sera retrouvée si la propriété Type image a été mise à Intégéré au lieu de Attaché. Une copie de l'image est gardée dans le formulaire.
Mais qd je vais déplacer mon dossier, l'image ne sera plus trouvée biensûr
Mais si, elle sera retrouvée si la propriété Type image a été mise à Intégéré au lieu de Attaché. Une copie de l'image est gardée dans le formulaire.
Bon je n'y arrive définitivement pas.
Je ne maîtrise pas assez le lien entre VBA et access alors merci de m'expliquer les choses simplement, je repose mon problème :
J'ai un état dans lequel j'insère deux images que je redimensionne et sur lesquelles je fait ma popotte...
Mon problème : comment les insérer en utilisant un chemin d'accès relatif ? On m'a proposé dans le message précédent d'utiliser la fonction "Currentproject.path" : Ok mais je m'en sers comment, comment je fais le lien entre ce "machin" et la propriété "image" de mon image où apparaît le chemin ABSOLU dans access?
Merci d'avance,
Je ne maîtrise pas assez le lien entre VBA et access alors merci de m'expliquer les choses simplement, je repose mon problème :
J'ai un état dans lequel j'insère deux images que je redimensionne et sur lesquelles je fait ma popotte...
Mon problème : comment les insérer en utilisant un chemin d'accès relatif ? On m'a proposé dans le message précédent d'utiliser la fonction "Currentproject.path" : Ok mais je m'en sers comment, comment je fais le lien entre ce "machin" et la propriété "image" de mon image où apparaît le chemin ABSOLU dans access?
Merci d'avance,
Bonsoir
Quand tu es dans ton état (pardon, je croyais que c'était un formulaire), fais un clic droit dans le petit carré en haut à gauche pour sélectionner l'état lui même (pas l'en-tête, ni le détail etc)
Tu choisis créer Code événement...
Tu entres alors dans le monde merveilleux de VBA.
Tu as une fenêtre avec un squelette de sous-programme Private sub Report_Open(Cancel as integer).
Si par hasard ce n'était pas le bon squelette de fonction, choisis dans la liste en haut à gauche l'objet Report et dans la liste en haut à droite l'événement Open (dans cet ordre)
(Form_Load c'était pour un formulaire)
Tu n'as plus qu'à coller dedans, pour chacune de tes images :
Image0.Picture = Application.CurrentProject.Path & "\images\monimage.jpg"
sans te soucier de ce que tu avais mis dans la propiété image, puisque cette fonction remplace précisément cette valeur
Précision : comme son nom le laisse supposer, cette fonction est appelée automatiquement chaque fois que l'état est ouvert
Quand tu es dans ton état (pardon, je croyais que c'était un formulaire), fais un clic droit dans le petit carré en haut à gauche pour sélectionner l'état lui même (pas l'en-tête, ni le détail etc)
Tu choisis créer Code événement...
Tu entres alors dans le monde merveilleux de VBA.
Tu as une fenêtre avec un squelette de sous-programme Private sub Report_Open(Cancel as integer).
Si par hasard ce n'était pas le bon squelette de fonction, choisis dans la liste en haut à gauche l'objet Report et dans la liste en haut à droite l'événement Open (dans cet ordre)
(Form_Load c'était pour un formulaire)
Tu n'as plus qu'à coller dedans, pour chacune de tes images :
Image0.Picture = Application.CurrentProject.Path & "\images\monimage.jpg"
sans te soucier de ce que tu avais mis dans la propiété image, puisque cette fonction remplace précisément cette valeur
Précision : comme son nom le laisse supposer, cette fonction est appelée automatiquement chaque fois que l'état est ouvert
Je dois vraiment pas être bon :
Suite à ça :
Private Sub Report_Open(Cancel As Integer)
Image0.Picture = Application.CurrentProject.Path & "\BSDD_annexes1.jpg" // Mon image est dans le même dossier que ma BDEnd Sub
J'obtiens ça :
"Erreur d'exécution 424: Objet requis"
"Image0" = le nom de l'image ? Je dois le rentrer dans les pptés de mon image ?
Merci
Durahsel
Suite à ça :
Private Sub Report_Open(Cancel As Integer)
Image0.Picture = Application.CurrentProject.Path & "\BSDD_annexes1.jpg" // Mon image est dans le même dossier que ma BDEnd Sub
J'obtiens ça :
"Erreur d'exécution 424: Objet requis"
"Image0" = le nom de l'image ? Je dois le rentrer dans les pptés de mon image ?
Merci
Durahsel
Bon ok j'ai pigé pour la fonction path: j'ai remplacé image0 par le nom de mes images (imageXX ...) et ça marche MAIS :
Je n'arrive pas à supprimer le chemin complet dans les propriétés et juste mettre le nom de l'image (comme tu l'as décrit dans ton post) ce qui fait que mon image se charge en mode aperçu et en mode création par moyen de la voir !
En plus j'ai un message d'erreur par image quand j'ouvre mon état en mode création ou pas !
GRRR ! j'y suis presque mais pas tout à fait
Je n'arrive pas à supprimer le chemin complet dans les propriétés et juste mettre le nom de l'image (comme tu l'as décrit dans ton post) ce qui fait que mon image se charge en mode aperçu et en mode création par moyen de la voir !
En plus j'ai un message d'erreur par image quand j'ouvre mon état en mode création ou pas !
GRRR ! j'y suis presque mais pas tout à fait
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir,
Ou ".\images\monimage.jpg" sans faire référence à application...path, ça ne marche pas avec access ?
(.\ pour le même répertoire et ..\ pour le répertoire père)
eric
Ou ".\images\monimage.jpg" sans faire référence à application...path, ça ne marche pas avec access ?
(.\ pour le même répertoire et ..\ pour le répertoire père)
eric
Bonjour,
".\images\monimage.jpg" sans faire référence à application...path, ça ne marche pas avec access ?
Non, durahsel a essayé, moi aussi.
Mais il y a quand même une solution simple.
En fait dans access, les chemins sont relatifs à un chemin indiqué dans les options. Quand on recopie la base ce chemin est recopié tel quel.
Par défaut, c'est un chemin absolu vers mes documents. Il suffit de l'effacer complètement pour pour pouvoir utiliser ensuite des acces relatifs pour les images.
Tu peux maintenant mettre comme image "image.jpg" en relatif.
".\images\monimage.jpg" sans faire référence à application...path, ça ne marche pas avec access ?
Non, durahsel a essayé, moi aussi.
Mais il y a quand même une solution simple.
En fait dans access, les chemins sont relatifs à un chemin indiqué dans les options. Quand on recopie la base ce chemin est recopié tel quel.
Par défaut, c'est un chemin absolu vers mes documents. Il suffit de l'effacer complètement pour pour pouvoir utiliser ensuite des acces relatifs pour les images.
Tu peux maintenant mettre comme image "image.jpg" en relatif.
C'est bon j'ai résolu le pb par de la bidouille :
En mode création je mets un chemin absolu pour pouvoir voir le fichier et travailler dessus.
Pour le mode aperçu, je passe par la fonction path et ensuite je supprime le chemin d'accès absolu donc l'image virtuellement et ça marche.
Ok et merci pour tout Le père
En mode création je mets un chemin absolu pour pouvoir voir le fichier et travailler dessus.
Pour le mode aperçu, je passe par la fonction path et ensuite je supprime le chemin d'accès absolu donc l'image virtuellement et ça marche.
Ok et merci pour tout Le père
Bonjour,
Réponse un peu tard, mais si ça peut aider quelqu'un d'autre...
MsgBox(Application.ThisWorkbook.Path)
a+
Réponse un peu tard, mais si ça peut aider quelqu'un d'autre...
MsgBox(Application.ThisWorkbook.Path)
a+
Bonjour,
Je travaille sur une appli access où j'ai créé un bouton qui va éxécuter un batch qui se trouve dans un autre dossier. Quand je met le chemin d'accès de mon .bat dans mon code ça marche nikel ! mais je voudrais mettre un chemin relatif.
Ma base access : C:/dossier/Bdd.accdb
chemin d'accès du .bat : C:/dossier/dossier_x/dossier_y/mon.bat
Voila j'espère que c'est assez clair.
Merci pour votre aide
Cordialement
Je travaille sur une appli access où j'ai créé un bouton qui va éxécuter un batch qui se trouve dans un autre dossier. Quand je met le chemin d'accès de mon .bat dans mon code ça marche nikel ! mais je voudrais mettre un chemin relatif.
Ma base access : C:/dossier/Bdd.accdb
chemin d'accès du .bat : C:/dossier/dossier_x/dossier_y/mon.bat
Voila j'espère que c'est assez clair.
Merci pour votre aide
Cordialement