Bonjour,

J'ai un .xls qui est une liste de produits avec un code, désignation, stock ....

et à coté de ca j'ai un dossier contenant des photos de ces produits listé dans le .xls, chaque photo a pour nom: le code de l'article.

Mon problème c'est que je veux ajouter une autre colonne à droite contenant les photos.

sur 2003 j'utilisé une macro de ce genre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Sub AffImage2()
    ' Sélectionner les cellules contenant un lien vers une image
    ' AffImage les affichera sur le lien ou dans la colonne de gauche ou de droite
    Const hDefaut = 75
    Dim msg As String, r As Long, h As Long
    Dim c As Range
    msg = "Oui : Afficher les images à gauche des liens sélectionnés" & vbCrLf
    msg = msg & "Non : Afficher les images sur les liens sélectionnés" & vbCrLf
    msg = msg & "Annuler : Afficher les images à droite des liens sélectionnés"
    r = MsgBox(msg, vbYesNoCancel, "Cellules où mettre les images")
    If r = vbYes Then
        r = -1
    ElseIf r = vbNo Then
        r = 0
    Else
        r = 1
    End If
    h = InputBox("Hauteur des lignes :", "Choix hauteur", hDefaut)
    For Each c In Selection
        'c.ColumnWidth = 20
        fich = c.Value
        If fich <> "" Then
            c.RowHeight = h 'fixer la hauteur de ligne
            ActiveSheet.Pictures.Insert(fich).Select 'ouverture image
            With Selection.ShapeRange
                .LockAspectRatio = msoTrue 'conserver les proportion
                .Height = h - 4 'hauteur de l'image = hauteur des lignes - 4
                .Left = c.Offset(0, r).Left + 2 'à gauche colonne A (sinon tu calcules avec la largeur de colonne des colonnes
                .Top = c.Top + 2 'et positionner verticalement
            End With
        End If
    Next c
End Sub

Maintenant si on peut m'aider à la modifier pour qu'elle tourne sur les 2 version d'Excel.

PS: je ne suis pas sur que ca soit parfaitement la macro que j'utilisais pour le 2003, mais je sais que ca y ressemble beaucoup.


Cordialement.