J'ai un petit problème avec excel. J'ai ajouté les images à l'aide d'une macro que j'ai récupéré sur internet. Ces images sont insérées grâce à un répertoire que j'ai installé sur le disque C:
Le problème c'est que lorsque je supprime ce répertoire, les images ne sont plus affichés. J'ai un exemple sous les yeux qui me prouve qu'il est possible d'ajouter une image à Excel sans passer par un répertoire. Cette image est donc intégrée à Excel et n'est plus relié au répertoire. De sorte qu'il est possible d'envoyer le fichier excel seulement sur un autre ordinateur qui ne possède pas ce répertoire.
J'aimerais pouvoir faire pareil sachant que les images sont insérés dans Excel de façon automatique car j'ai plus de 2000 insertions.
Me suis-je bien fait comprendre ? Avez vous des solutions à mon problème ?
Je vous remercie d'avance pour l'aide que vous me fournirez.
Bonjour Léa,
D'abord Bienvenue au club en tant que nouvellement inscrite et pour ton 1er message.
Il y a beaucoup de volontaires et bénévoles sur XLD et je pense que tu trouveras sur le forum toutes les réponses à tes questions.
L'exercice le plus difficile en fin de compte est d'arriver à bien expliquer sa demande.
Concernant ton problème, si j'ai bien compris, c'est d'importer des fichiers image d'un répertoire sur une feuille Excel sans lien avec un quelconque répertoire source.
Ci-jointe une petite application faite rapidement.
Le code VBA est à adapter à ton besoin suivant le répertoire source et la destination des feuilles d'images.
A noter que le code supprime toutes les Pictures de la feuille avant d'importer les nouvelles.
Attention à la taille finale pour 2000 images !
J'ai essayé ce que tu m'as envoyé mais le problème c'est qu'une fois le répertoire C:/users/public/pictures supprimé, les images ne peuvent plus être affichées.
En fait ce que j'aimerais c'est insérer des images à excel et qu'on puisse partager ce fichier avec les images à l'intérieur. Un peu comme word : On importe une image du disque dur mais après on n'a pas besoin d'envoyer le fichier word et le répertoire avec les images. Seul le fichier word est envoyé et il contient quand même les images.
Avec excel, j'importe les images a partir du disque dur mais si je veux partager mon excel, il faut que j'envoie les images et le fichier excel.
Comment faire pour n'envoyer que le fichier excel sans envoyer le répertoire d'images qui va avec?
les images restent dans le classeur, même si le répertoire des images est déplacé ou supprimé.
Ci-joint le résultat de l'utilisation du code de Herdet (utilisation de ....Pictures.Insert...) comme confirmation . Il contient 4 images issues de l'échantillon d'images windows.
@Herdet et @Paf :
La macro fonctionne bien. J'ai importé des images d'un répertoire donné. J'ai enregistré le fichier et supprimer le répertoire. Quand je retourne sur le fichier, j'ai un message d'erreur à l'emplacement de chaque image disant : Impossible d'afficher l'image liée. Le fichier a peut-être été déplacé, renommé ou supprimé. Vérifiez que la liaison pointe vers le fichier et l'emplacement corrects.
Sur word ce n'est pas le cas, on peut importer une image, enregistrer le fichier, supprimer l'image du disque, ouvrir le fichier et l'image est tout de même présente.
@BOISGONTIER : Je teste ta macro. Je croise les doigts pour que ça marche
@BOISGONTIER : Elle est bien cette macro mais elle ne réponds pas à mon attente. Tout de même, tu m'as transféré un excel seulement avec les images à l'intérieur. C'est ce que je veux. Comment fait-on pour charger les images dans un excel et quelles se comportent comme une image interne ?
Merci beaucoup pour ton code. Alors ça marche parfaitement. C'est cool mais je ne comprends absoluement pas pourquoi avec ce code ça fonctionne (l'image reste même après suppression de celle-ci tandis qu'avec les autres codes ça ne fonctionne pas.
Peux-tu me dire quelles instructions permet de garder l'image ? serait-ce Application.ScreenUpdating = False ?
En tout cas merci beaucoup. Ma besace excel commence grâce à ton code !
Merci à tous pour votre aide. Je continuerais à lire ce post si vous y répondez.
J'ai essayé d'adapter le code à mon application. ça marche plutôt bien à part que j'aimerais que les cellules se proportionne à la taille de l'image ou à une taille que j'aurais prédéfini. Je suis totalement débutant en VBA. Je trouve que c'est un langage assez mystérieux. Bref, j'ai du mal à le comprendre.