avec excel 2007 : inserer une image dans une cellule
Le
Alfred WALLACE
Bonjour,
j'ai cherché (mal surement) sans trouver.
j'ai une liste de noms (un nom par ligne) et
pour chaque nom (en colonne A par exemple), j'aimerai
avoir dans la cellule de la colonne B une image (c'est
la photo du type)
Si j'insère une image à partir d'un fichier, ok çà marche
mais, en insérant des noms entre les lignes, les images
ne suivent pas.
est ce que celà peut etre fait sans macro ?
Merci pour votre aide
José
j'ai cherché (mal surement) sans trouver.
j'ai une liste de noms (un nom par ligne) et
pour chaque nom (en colonne A par exemple), j'aimerai
avoir dans la cellule de la colonne B une image (c'est
la photo du type)
Si j'insère une image à partir d'un fichier, ok çà marche
mais, en insérant des noms entre les lignes, les images
ne suivent pas.
est ce que celà peut etre fait sans macro ?
Merci pour votre aide
José

Poser une question


"Alfred WALLACE" a écrit
j'ai cherché (mal surement) sans trouver.
j'ai une liste de noms (un nom par ligne) et
pour chaque nom (en colonne A par exemple), j'aimerai
avoir dans la cellule de la colonne B une image (c'est
la photo du type)
un exemple très didactique là :
http://polykromy.com/html/decaler.html
autres exemples là :
http://boisgontierjacques.free.fr/p...choixPhoto
La procédure TestMonImage, insère l'image dont le nom du fichier est dans la colonne A
situé dans le répertoire que tu indiqueras. L'image sera aux dimensions de la cellule B
Le nom de l'image dans la colonne B doit avoir aussi l'extension (.jpg) du fichier image
si non, il faut l'ajouter dans la procédure...
'--------------------------------------
Sub TestMonImage()
Dim C As Range
Dim Répertoire As String
Répertoire = "c:Mes images"
With Feuil1
For Each C In .Range("A1:A10")
'Test si le fichier image existe
If Dir(Répertoire & C.Value) <> "" Then
'si oui, l'image est insérée dans la colonne B
InsérerImage .Name, C.Offset(, 1), Répertoire & C.Value
End If
Next
End With
End Sub
'--------------------------------------
Sub InsérerImage(Feuille As String, RgImage As Range, NomImage As String)
Dim Rg As Range
Set Rg = Worksheets(Feuille).Range(RgImage.Address)
With Rg
Largeur = .Offset(, 1)(, .Columns.Count).Left - .Left
Hauteur = .Offset(.Rows.Count).Top - .Item(1).Top
Set Image = Worksheets(Feuille).Pictures.Insert(NomImage)
End With
With Image
.ShapeRange.LockAspectRatio = msoFalse
.Left = Rg.Left + 1
.Top = Rg.Top
'Largeur de l'image
Image.Width = Largeur - 1.5
'Hauteur de l'image
Image.Height = Hauteur - 1.1
'Est-ce que l'image doit se déplacer avec les cellules
'voici les 3 constantes possibles
.Placement = xlMoveAndSize ' xlFreeFloating 'or xlmove or xlMoveAndSize
'Verrouillé ou pas
.Locked = True 'or False
End With
Set Rg = Nothing
End Sub
'--------------------------------------
MichD
------------------------------------------
"Alfred WALLACE" a écrit dans le message de groupe de discussion :
Bonjour,
j'ai cherché (mal surement) sans trouver.
j'ai une liste de noms (un nom par ligne) et
pour chaque nom (en colonne A par exemple), j'aimerai
avoir dans la cellule de la colonne B une image (c'est
la photo du type)
Si j'insère une image à partir d'un fichier, ok çà marche
mais, en insérant des noms entre les lignes, les images
ne suivent pas.
est ce que celà peut etre fait sans macro ?
Merci pour votre aide
José
pour vos idées conseils et codes !
super !
José
On 16 jan, 14:15, "MichD"