Je dispose d'une macro qui me permet de sélectionner une image et de la placer (en la redimensionnant) dans une plage de cellules définie sur une feuille Excel.
Code :
Sub InsertionImage_Page_Garde()
Dim Emplacement As Range
Dim Img As Object
Dim ShapeObj As Shape
'Boucle pour supprimer l'ancienne image
For Each ShapeObj In ActiveSheet.Shapes
If ShapeObj.Name = "Cible6" Then ActiveSheet.Shapes("Cible6" ).Delete
Next ShapeObj
If Application.Dialogs(xlDialogInsertPicture).Show Then
'Définit l'emplacement de l'image
Set Emplacement = Range("B11:H37" )
Set Img = ActiveSheet.DrawingObjects(ActiveSheet.Shapes.Count)
With Img.ShapeRange
'Nommer l'image insérée (Pour la supprimer plus facilement ensuite)
.Name = "Cible6"
.LockAspectRatio = msoFalse
.Left = Emplacement.Left
.Top = Emplacement.Top
.Height = Emplacement.Height
.Width = Emplacement.Width
End With
Else
MsgBox "Insertion d'image interrompue."
End If
End Sub
Le seul soucis c'est que je suis obligé de faire une capture d'écran de l'image que je veux insérer, de l'enregistrer dans un dossier puis de lancer la macro pour l'insérer sur Excel.
Je voudrais donc savoir s'il était possible d'améliorer cette macro afin que celle-ci permette de faire directement la capture d'écran et d'insérer l'image dans la zone définit. L'idée serait :
- Lancer la macro - Sélectionner la partie de l'image voulue grâce à un outil de capture d'écran - La macro place l'image capturée dans la plage voulue et en la redimensionnant (comme le permet actuellement ma macro).
Marsh Posté le 16-05-2017 à 15:47:25
Bonjour le forum,
Je dispose d'une macro qui me permet de sélectionner une image et de la placer (en la redimensionnant) dans une plage de cellules définie sur une feuille Excel.
Le seul soucis c'est que je suis obligé de faire une capture d'écran de l'image que je veux insérer, de l'enregistrer dans un dossier puis de lancer la macro pour l'insérer sur Excel.
Je voudrais donc savoir s'il était possible d'améliorer cette macro afin que celle-ci permette de faire directement la capture d'écran et d'insérer l'image dans la zone définit. L'idée serait :
- Lancer la macro
- Sélectionner la partie de l'image voulue grâce à un outil de capture d'écran
- La macro place l'image capturée dans la plage voulue et en la redimensionnant (comme le permet actuellement ma macro).
Je vous remercie d'avance !