Macro fonctionnant sauf en boucle

Bonjour,

La semaine dernière j'avais publié un post' où je demandais si on pouvais enregistrer un userform en image et la réponse fut négative

J'ai donc décidé de créer une macro qui fasse une capture d'écran totale de la feuille1 où j'ai préparé un petit formulaire grâce à la RECHERCHEV.

Mon problème est que la macro fonctionne si je l’exécute seule, mais dès que je l'intègre en boucle (comme c'est le cas si joint) la macro me fais une capture d'écran uniquement la première fois... étrange d'autant plus qu'en l’exécutant pas à pas avec F8, la capture d'écran s'effectue bien à chaque passage...

Quelqu'un aurait-il une idée pour détecter l'origine du problème ?

En vous remerciant d'avance,

PS : La macro se situe en module 5

17transport.xlsm (79.66 Ko)

Bonjour LORIS01

La semaine dernière j'avais publié un post' où je demandais si on pouvais enregistrer un userform en image et la réponse fut négative

Celui ou ceux qui t'ont répondu ça, sont des "imbéciles" rien n'est impossible en développement

Ceci dit, pourquoi vouloir enregistrer en image

Userfrom1.PrintForm

permet d'en lancer une impression

Sinon, avec ta dernière idée, inutile de faire une copie d'écran

Voir le fichier corrigé

A+

Bonjour BrunoM45,

pourquoi vouloir enregistrer en image

L'objectif final n'est pas d'imprimer les "fiches" créées mais de les partager en ligne. Le format image permet de le faire simplement sans que l'utilisateur n'est besoin d'enregistrer le fichier puis de l'ouvrir comme c'est la cas avec le format pdf par exemple.

Quoiqu'il en soit, merci beaucoup pour votre réponse cela réponds parfaitement à ma demande.

Seul petit bémol, vous avez enlevé la partie prise par l'appareil photo excel. Or il y est censé avoir une photo de fond sur la partie jaune du fichier (voir ci-joint). Le problème est que la macro capture ne fonctionne plus, du moins elle capture toujours la même chose en plusieurs exemplaires.

Avez-vous une idée ?

PS : ce n'est qu'un détail, mais la qualité d'image enregistrée est assez faible, existe-t-il un moyen d'avoir une meilleurs qualité ?

@+

Monsieur "GrosBrasDonneurDeLeçon" s'étant éclipsé, je te propose ça (en pièce jointe)

J'ai truffé le Code de "DoEvents" dont je e suis pas sur qu'ils sont tous utiles :

Quoi qu'il en soit ça permet sans doute au proc de respirer un peu...

Et le Application.CutCopyMode = False permet de vider le presse papier.

J'ai aussi changé d'image ainsi que la photo parce que le classeur d'origine (et peut-être mes nombreux essais ..) comportait un empilement d'objets image indésirables.

A+

Bonjour Galopin01,

Très sympa de votre part de revenir à mon aide toujours sur la même thématique

Cela marche parfaitement, puis-je savoir pour apprendre à quoi sert l'instruction "DoEvents" ?

En tout cas un grand merci

Bonjour Loris

Quoiqu'il en soit, merci beaucoup pour votre réponse cela réponds parfaitement à ma demande.

Seul petit bémol, vous avez enlevé la partie prise par l'appareil photo excel. Or il y est censé avoir une photo de fond sur la partie jaune du fichier (voir ci-joint). Le problème est que la macro capture ne fonctionne plus, du moins elle capture toujours la même chose en plusieurs

Le code que je t'ai donné, exporte directement la plage définie au format ".JPG" il est donc totalement inutile de faire un snapshot ou alors je n'ai vraiment pas tout compris !?

Voici un exemple des JPG que j'obtiens

PS : ce n'est qu'un détail, mais la qualité d'image enregistrée est assez faible, existe-t-il un moyen d'avoir une meilleurs qualité ?

En zoomant sur la feuille, cela semble donner une meilleure définition

A+

image1 image2 image3 image4

Bonjour Bruno,

Je me suis peut-être mal exprimé

Sans snapshot, j’obtiens comme vous des jpeg différents comme souhaité. Mais je ne peux pas insérer d'image en arrière plan (à la place du carré jaune), c'est pourquoi, je dois mettre en place un snapshot... et votre code qui exporte la plage définie en jpeg exporte dans ce cas toujours la même image, sans changer de référence.

Mais la suggestion de Galopin de truffer le code de "DoEvents", à l'air de résoudre le problème.

Effectivement, en zommant, il y a une petite amélioration de la qualité.

Merci de votre code en tout cas

@+

Rechercher des sujets similaires à "macro fonctionnant sauf boucle"