Bonjour à tous. J'ai un souci pour lequel je ne trouve aucune info sur internet.
Je veux pouvoir utiliser la fonctionnalité d'Excel 'insérer une image dans la cellule' afin d'intégrer pour une serie de code la photo correspondante. Je passe donc par VBA pour le faire à 'grande échelle'.
En utilisant l'enregistreur de macro pour voir la formule vba de cette fonctionnalité j'obtiens ceci (j'ai remplace le chemin de la photo) :
Or quand je l'applique betement dans un tableau simple via ce code ci (la vraie destination de dossierPhotos a été changé par souci de confidentialité) :
J'ai le message suivant qui apparait :
Je n'arrive pas a comprendre d'ou provient le problème en sachant que j'ai bien des codes en colonne G et que j'ai bien les photos qui vont avec dans mon dossier .
Je vous remercie de votre réponse
Je veux pouvoir utiliser la fonctionnalité d'Excel 'insérer une image dans la cellule' afin d'intégrer pour une serie de code la photo correspondante. Je passe donc par VBA pour le faire à 'grande échelle'.
En utilisant l'enregistreur de macro pour voir la formule vba de cette fonctionnalité j'obtiens ceci (j'ai remplace le chemin de la photo) :
VB:
Selection.InsertPictureInCell (cheminPhoto)
Or quand je l'applique betement dans un tableau simple via ce code ci (la vraie destination de dossierPhotos a été changé par souci de confidentialité) :
VB:
Sub InsererPhotos()
Dim ws As Worksheet
Dim dossierPhotos As String
Dim codeMF As String
Dim cheminPhoto As String
Dim derniereLigne As Long
Dim cell As Range
Dim fso As Object
Application.ScreenUpdating = False
Application.DisplayAlerts = False
' Définir le nom de la feuille et le dossier contenant les photos
Set ws = ThisWorkbook.Sheets("Trame")
dossierPhotos = "chemindelaphoto" ' Modifiez ce chemin vers le dossier de vos photos
Set fso = CreateObject("Scripting.FileSystemObject")
ws.Activate
ws.Columns("BF").Clear
' Trouver la dernière ligne avec des données dans la colonne Code MF
derniereLigne = ws.Cells(ws.Rows.Count, "G").End(xlUp).Row ' La colonne G contient mon code article
' Boucle à travers toutes les cellules dans la colonne Code MF
For Each cell In ws.Range("G2:G" & derniereLigne)
codeMF = cell.Value
cheminPhoto = dossierPhotos & codeMF & ".jpg"
ws.Cells(cell.Row, "BF").Select
' Insérer la photo dans la colonne BF
If fso.FileExists(cheminPhoto) Then
On Error Resume Next
On Error GoTo 0
Selection.InsertPictureInCell (cheminPhoto)
Else
End If
Next cell
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
J'ai le message suivant qui apparait :
Erreur d'exécution'-2147467259 (80004005)': La méthode 'InsertPictureInCell' de l'objet 'Range' a échoué
Je n'arrive pas a comprendre d'ou provient le problème en sachant que j'ai bien des codes en colonne G et que j'ai bien les photos qui vont avec dans mon dossier .
Je vous remercie de votre réponse