'-----------------------------------
'Importer une image dans une feuille
'-----------------------------------
'Parametres:
'----------
'- SourceImage Nom complet du fichier image ou de l'Objet Picture
'- TargetRange Cellule ou Plage où placer l'image
'- ClearRangeFirst Efface prélablement toutes les Shapes présentes dans le TargetRange
' Défaut: True
'- ImportedObjectName Nom imposé de l'Objet Image ou de la Shape après insertion
' Défaut: nom généré par Excel retourné par la fonction
'- msoShape Si l'image doit être placée dans une Shape,
' Type de Shape (https://docs.microsoft.com/en-us/office/vba/api/office.msoautoshapetype)
' Exemple: msoShapeRectangle
' Défaut: pas de Shape
' Fonctionne uniquement si SourceImage est de type fichier
'- msoShapeBorderWeight Si une msoShape est spécifiée, l'épaisseur de ses bordures
' Défaut: 1 point
'- msoShapeBorderColor Si une msoShape est spécifiée, la couleur de ses bordures'
' Défaut: 0 (noir)
'- InCell True place l'image dans la cellule / plage
' Défaut: True
' False place l'image en dehors de la cellule / plage
'- InCellHMarginPercentage Si InCell = True, pourcentage de largeur de cellule / plage pour une marge horizontale droite et gauche
' Défaut: 0%
'- InCellVMarginPercentage Si InCell = True, pourcentage de hauteur de cellule / plage pour une marge verticale haute et basse
' Défaut: 0%
'- Align Si InCell = True, position de l'image dans la cellule / plage
' - En gardant les proportions originales de l'image: "Top", "Bottom", "Left", "Right", "Centre"
' Défaut: "Centre"
' - En modifiant les proportions originales de l'image: "Cover"
' Si InCell = False, position de coin haut gauche de l'image par rapport à la cellule / plage
' - En gardant les proportions originales de l'image: "TopLeft", "TopRight", "BottomLeft", "BottomRight", "Centre"
' Défaut: "TopLeft"
' - ResizeRatio Si InCell = False, ratio de redimensionnement à appliquer à l'image
' Défaut: 1
'Return:
'------
'- Nom de l'Objet image ou Shape créé
'-----------------------------------
Function ImportImage(ByVal SourceImage As Variant, _
ByVal TargetRange As Range, _
Optional ByVal ClearRangeFirst As Boolean = True, _
Optional ByVal ImportedObjectName As String = vbNullString, _
Optional ByVal msoShape As String = vbNullString, _
Optional ByVal msoShapeBorderWeight As Single = 1, _
Optional ByVal msoShapeBorderColor As Long = 0, _
Optional ByVal InCell As Boolean = True, _
Optional ByVal InCellHMarginPercentage As Single = 0, _
Optional ByVal InCellVMarginPercentage As Single = 0, _
Optional ByVal Align As String = vbNullString, _
Optional ByVal ResizeRatio As Single = 1, _
Optional ByVal DeleteSourceImage As Boolean = False) As String