Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro d'Insertion de plusieurs images dans des cellules differentes

mael.choulant

XLDnaute Nouveau
Bonjour a toutes et a toutes,

Apres avoir pas mal chercher sur internet sans trouver la reponse a mon probleme, je m'en remets a vous.

Voila mon probleme:
Je voudrais creer une macro Excel 2007 permettant d'inserer plusieurs images dans differentes cellules en meme temps tout en les redimensionnant.
Pour l'instant j'arrive a inserer un image en la redimensionnant dans la cellule selectionner, mais pour plusieurs image a la fois, je bloque.

Je precise que le nombre d'image est aleatoire et que chaque image doit etre inserer dans une cellule differente. Pour cela, je voudrais selectionner les images (qui sont dans un meme repertoire) et les inserer dans l'ordre dans les cellules suivantes: C3, L3, C20, L20, C37, L37 et ainsi de suite.

Voici mon code VBA:

Sub Insert_photo()
'
' Insert_photo Macro
'
' Keyboard Shortcut: Ctrl+q
'

Dim ficimg As Variant
ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image") ' choix nom du fichier
If ficimg = False Then Exit Sub
ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
With Selection.ShapeRange
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
.Top = ActiveCell.Top ' haut de la cellule
.Left = ActiveCell.Left ' gauche de la cellule
.Height = 230 ' hauteur de la cellule
.Width = 308 ' largeur de la cellule
End With
With Selection
.PrintObject = True ' l'objet est imprimé en même temps que le document
End With
Selection.Cut
ActiveCell.Select
ActiveSheet.PasteSpecial Format:="Picture (JPEG)", Link:=False, _
DisplayAsIcon:=False
End Sub


D'avance, merci de votre aide.
Mael
 

Pièces jointes

  • Insertion d'images.xls
    183 KB · Affichages: 86

Discussions similaires

Réponses
1
Affichages
306
Compte Supprimé 979
C
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…