Code VBA, insérer automatiquement une image dans cellules fusionnées

frangil

XLDnaute Nouveau
Bonjour,

Je souhaiterais insérer une image dans des cellules fusionnées qui se dimensionne automatiquement en fonction des cellules fusionnées au format portrait ou paysage avec une bordure grise de 0.5 pt.

Mon fichier comprend plusieurs onglets et j'aimerais utiliser un code VBA dans tous les onglets de mon fichier.

Est-ce que quelqu'un peut me venir en aide ?

D'avance un tout grand MERCI !

Frangil
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Code VBA, insérer automatiquement une image dans cellules fusionnées

Bonsoir Frangil,

Un essai dans le fichier joint.

le formulaire (userform) pour insérer une image est appelé :

  • soit par un clique sur l'image de l'appareil photo (à recopier si on le désire sur les autres feuilles)
  • soit par la combinaison de touches CTRL+MAJ+P à partir de n'importe quelle feuille

Une fois le formulaire affiché , il faut:

  • sélectionner un fichier image (attention tous les formats ne sont pas compatibles)
  • sélectionner une plage de cellules (fusionnées ou non). On peut sélectionner une plage d'une autre feuille que la feuille active
  • cliquer sur OK

nota : le redimensionnement essaye de conserver le rapport entre la largeur et la hauteur du fichier image d'origine. C'est pourquoi l'image peut ne pas occuper toute la surface de la plage.

remarque : le fichier Excel seul ne pèse que 48 Ko !
 

Pièces jointes

  • Frangil v1.zip
    406 KB · Affichages: 346
Dernière édition:

frangil

XLDnaute Nouveau
Re : Code VBA, insérer automatiquement une image dans cellules fusionnées

hello mapomme,

Est-tu sur d'avoir bien choisi ton pseudo ? Moi, je mettrai génie, car ton fichier est tout simplement ... génial !

Un tout grand merci à toi.

Cordialement

Frangil
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Code VBA, insérer automatiquement une image dans cellules fusionnées

Re,

Une version v1a qui :

  1. corrige un bogue (impossibilité de sélectionner à nouveau une plage si l'insertion se terminait par une erreur)
  2. réduit la surface du formulaire pour que la sélection de la plage de cellules soit plus pratique
  3. quand on lance la macro, on recherche les images dans le dossier du fichier excel.Ensuite, tant qu'on ne referme pas le formulaire, on devrait afficher le répertoire de la dernière image sélectionnée.
 

Pièces jointes

  • Frangil v1a.zip
    98.9 KB · Affichages: 185
Dernière édition:

frangil

XLDnaute Nouveau
Re : Code VBA, insérer automatiquement une image dans cellules fusionnées

re,

Je ne suis vraiment pas un pro de VBA, mais pourrais-tu me donner le code VBA en clair avec si possible, un cadre qui se met automatiquement autour de l'image ?

D'avance merci à toi.

Frangil
 

Karim

XLDnaute Nouveau
Re : Code VBA, insérer automatiquement une image dans cellules fusionnées

Bonjour,
Mapomme, Vous m'aviez deja dépanné sur des insertions de photo multiple,
le fichier que vous avez fait pour frangil est super (userfrom..), j'aimerais utiliser ce code et savoir si c'était possible de l'avoir avec une petite modifacation s'il vous plait,
Que la photo reste définitivement dans le document excel, car elle disparait quand on efface le répertoire photo, ou quand on envoi le fichier vers un autre PC..
Vous l'aviez trés bien fait dans un autre fichier, mais je n'ai pas reussi a reproduir la modif
" ' on insère l'image définitivement
Set shp = ActiveSheet.Shapes.AddPicture(Filename:=CheminNomExtensionIMAGE, linktofile:=msoFalse, _
savewithdocument:=msoCTrue, Left:=10, Top:=10, Width:=Lshp, Height:=Hshp)


Les options aussi sont superbe
' on rajoute une p'tite bordure grise - c'est plus esthétique !!!

'si on veut, on centre l'image

Grand merci pour ces sauvetage que vous faite, vraiment merci
 

Ranohira

XLDnaute Nouveau
Re : Code VBA, insérer automatiquement une image dans cellules fusionnées

Bonjour à tous je suis nouveau !
Je besoin de votre aide pour un VBa
voici les sujet
Dans une feuille nommé macro1, il y a des listes comme par exemple Marron puis après une 2ème ligne les nombres 3, puis après 13ème ligne il y a Rouge le nombre s'écrit aussi à la 2ème ligne après.
Travail à faire
Classer dans une autre feuille de format Marron / Rouge en dessous les nombres respective
QUELS CODES devraux je utilisées
Merci
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Code VBA, insérer automatiquement une image dans cellules fusionnées

Bonsoir Karim :),

(...) le fichier que vous avez fait pour frangil (...), j'aimerais utiliser ce code et savoir si c'était possible de l'avoir avec une petite modifacation s'il vous plait (...) Que la photo reste définitivement dans le document excel, car elle disparait quand on efface le répertoire photo, ou quand on envoi le fichier vers un autre PC... (...)

J'ai modifié le fichier v1a :


  • pour incorporer définitivement les images dans le classeur
  • ajouter des options de placement de l'image par rapport à la plage d'insertion
  • ajouter un choix de largeur de bordure
  • ajouter une possibilité d'essayer d'effacer la dernière forme insérée (tant qu'on ne referme pas le formulaire)
  • améliorer le respect du ratio de l'image d'origine quand on ajoute une bordure
 

Pièces jointes

  • Frangil-Inserer Image dans Plage-v2a.xlsm
    62.1 KB · Affichages: 305
Dernière édition:

Karim

XLDnaute Nouveau
Re : Code VBA, insérer automatiquement une image dans cellules fusionnées

bonjour,
merci, mais j'ai reçu la version des photo multiple que vous aviez faite..
Serait il possible d'avoir la version frangil avec l'USEFROM pour inserer les photo une a une définitivement.

merci d'avance
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Code VBA, insérer automatiquement une image dans cellules fusionnées

Re,
bonjour,
merci, mais j'ai reçu la version des photo multiple que vous aviez faite..
Serait il possible d'avoir la version frangil avec l'USEFROM pour inserer les photo une a une définitivement.

Je me suis emmêlé les pinceaux :eek:. J'ai remis le bon fichier dans mon précédent message ICI.
 

Discussions similaires

Réponses
2
Affichages
99

Statistiques des forums

Discussions
311 725
Messages
2 081 941
Membres
101 848
dernier inscrit
Djigbenou