Insertion d'images automatique

Un sujet du même nom, sur lequel j'intervenais, a brusquement disparu...

Et il semble que cet évènement se soit produit à l'insu de l'auteur du sujet : Maxrioclaro

Pour éviter de passer un temps qui pourrait se révéler inutile à enquêter sur cette disparition, je reprends ici :

Situation à laquelle était parvenue le développement du sujet :

Un ensemble de procédures permettait de constituer un catalogue en insérant des images en colonne A.

Il semble qu'un dysfonctionnement se soit produit, localisé dans la cellule A1 où se cumulaient des lots d'images insérées.

Cela a amené l'auteur à relancer le sujet sur ce problème.

Ainsi que je l'avais indiqué avant la perte du sujet, j'ai eu du mal à récupérer le fichier, instable, que j'ai tout de même fini par ouvrir mais qui demeurait toujours aussi instable. Pour le stabiliser, j'ai dû supprimer toutes les images (avec macro). Il m'était apparu cependant que outre le problème de A1 il y avait toujours au moins partout au moins 2 images superposées.

D'autre part, les images n'étant pas visibles, il était clair qu'elles n'étaient pas enregistrées avec le fichier mais liées à leur source, ce qui n'était pas me sembl-t-il le but initial.

Je me suis donc penché sur ce problème pour délier les images de leur source après documentation sur la question.

En effet, la méthode Pictures.Insert utilisée insérant des images non liées dans les versions d'Excel antérieures à 2007, insérait désormais des images liées.

Je suis donc passé à la méthode AddPicture, comportant un argument destiné à définir le caractère lié ou non. Mais là, malgré les affirmations de la documentation, les images sont demeurées liées !

Au terme de multiples tests, je pense être parvenu à une solution de contournement. J'en subodore une autre, mais une devrait suffire.

Il convient de tester en réel. J'ai donc limité (à cette fin) les effets du gestionnaire d'erreurs, pour le limiter au chargement de l'image (de façon que si une image n'est pas trouvée dans le dossier, cela ne bloque pas le processus). Par contre, il ne sera plus actif pour les opérations suivantes, de façon que si une erreur intervient on puisse l'identifier.

Si les problèmes constatés sur A1 étaient liés à autre chose, ils réapparaîtront et on pourra alors (j'espère) les traiter en tant que tels avec une erreur identifiée et localisée...

Affaire à suivre.

Ferrand

Il y a un souci j'ai téléchargé le fichier j'arrive à l'ouvrir mais je ne peux pas exécuter le code.


InserImg wsS.Cells(i, kS(0)).Value, i + m me retourne l'erreur 13


Le problème survient quand on supprime la feuille 1 pour relancer la macro

A la première exécution pas de souci si ce n'est que les images sont en double ce qui en soit n'est pas trop grave c'est juste une question de poids du fichier.

Si je supprime la feuille pour en refaire une autre le phénomène intervient.

La macro n'opère que sur la première feuille.

Si tu la supprimes, il faut la remplacer par une nouvelle feuille vierge.

J'en suis conscient quand je parle de supprimer c'est du contenu dont je parle tu sélectionne tout et tu supprime et là tu as le phénomène qui se produit.

Pas bien compris ce que tu veux dire !?

Si tu supprimes la feuille 1 pour recommencer, c'est la feuille que tu supprimes, et tu la remplaces simplement en mettant une autre feuille vierge à sa place.

L'erreur 13 que tu signalais (incompatibilité de type) survient sur la ligne d'appel de la procédure d'insertion image.

Elle envoie le nom du fichier image à la procédure. Ce dernier se trouve sur ta feuille source, à la ligne où l'on en est parvenu dans le déroulement de la boucle, colonne 32. Y aurait-il un contenu dans une cellule de cette colonne qui ne soit pas une chaîne ? (nombre, erreur, rien...)

Rechercher des sujets similaires à "insertion images automatique"