XL 2019 Placer ou remplacer une photo .jpg au-dessus de la cellule [B6] contenant du texte à conserver

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Webperegrino

XLDnaute Accro
Supporter XLD
Bonjour Le Forum,

Pour info : rien d’urgent pour l’aide que vous pourriez porter dans les lignes VBA que vous trouverez en pièce jointe. Je galère dans mes tests depuis deux semaines, je peux encore patienter...

La compression contient :
1 - une petite application (PhotoBénévole_1.xlsm) qui va chercher une photo au format .jpg
2 – le répertoire « TROMBINOSCOPE » contenant les images .jpg
Un changement de prénom en cellule [B4] doit modifier la photo (en haut-gauche) en place et au-dessus du texte de la cellule [B6].

Je maîtrise mal l’expression Wsh.Shapes.AddPicture(File, False, True, 0, 0, [F1].Width, [F1].Height) car l’image n’apparaît pas à l’endroit désiré.
Après deux semaines de recherches et de test dans tous les sens, et malgré une tentative de réduction des lignes de code, le résultat est insatisfaisant :
1 – l’ancienne photo n’est pas retirée,
2 – la nouvelle photo correspondant au prénom placé en (B4] va en [A1] au lieu d’aller dans le coi haut-gauche de [B6],
Le texte de [B6] et les autres images du type .JPG (comme le feu vert mis ici en témoin) doivent bien sûr être conservés (à priori j'ai réussi cela).

Je constate aussi qu’après l’utilisation de la macro le triangle de validation liste de [B4] a tendance à disparaître, malgré la ligne de code spéciale mise en fin de vba. Je n'arrive pas à rectifier cela.

Je serais ravi de recevoir une correction des lignes vba pour que ce fichier fonctionne parfaitement.
Webperegrino
 

Pièces jointes

Solution
Bon on peut utiliser AddPicture :
VB:
With Me.Shapes.AddPicture(chemin & fichier, msoFalse, msoTrue, [B6].Left, [B6].Top, -1, -1)
    .LockAspectRatio = msoTrue 'verrouille le ratio
    .Height = [B6:B7].Height 'redimensionne l'image
End With
-1 indique que l'on conserve les dimensions originales de l'image.
Re,
Juste une question : Votre Excel est en Français ou en Anglais ?
Car je cherche "Image xx", si c'est en anglais c'est "Picture xx". Ca expliquerait, et je n'y avais pas pensé.
Salut,
Sylvanu, dans les versions récentes d'Excel les images créées se nomment Picture même si l'Excel est en français. C'est ce que j'ai dans une version Excel 2021.
Nullosse
 
Le Forum,
Merci à vous tous.
J'ai appliqué vos propositions dans mon vrai fichier, et cela fonctionne à merveille !
Je sais maintenant redimensionner la photo, la dpositionner un petit peu par rapport au coin haut-gauche, et la proportionner pour que le contenu de la cellule (ou cellules fusionnées) soit entièrement visible sous la photo.
Tout cela est maîtrisé maintenant.
Encore merci pour votre précieuse collaboration.
Webperegrino "XY 🤣"
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

U
Réponses
0
Affichages
1 K
Uberdork
U
C
Réponses
10
Affichages
3 K
F
Retour