Insertion d'une image en VBA ... lorsque son nom change ...et + [Résolu/Fermé]
Signaler
Grib17
Grib17
- Messages postés
- 5
- Date d'inscription
- lundi 3 mars 2014
- Statut
- Membre
- Dernière intervention
- 5 mars 2014
Grib17
- Messages postés
- 5
- Date d'inscription
- lundi 3 mars 2014
- Statut
- Membre
- Dernière intervention
- 5 mars 2014
Bonjour à tous !
Je m'explique... Je suis en plein classement méthodique avec un fichier excel déjà bien chargé... mais celui-ci est lié à un autre fichier avec une mise en page prédéfinie. A cette mise en page je voudrai....
Insérer une image dans la cellule j4
Avec une image faisant référence à un nom (exemple : Bp_Fl_Be_Ch_Er_Type_01_Var.b_001.jpg) en cellule I2
Particularité:
Listing d'image se trouvant dans un dossier
Ajuster cette image en haut à gauche de la cellule J4 Avec un format de 70% à l'original (soit 3,3 cm)
Celle-ci doit changer quand le nom change en cellule I2....
Je ne sais pas si j'ai été clair..mais je vous remercie par avance pour vos réponses.
Cordialement
Grib17
Je m'explique... Je suis en plein classement méthodique avec un fichier excel déjà bien chargé... mais celui-ci est lié à un autre fichier avec une mise en page prédéfinie. A cette mise en page je voudrai....
Insérer une image dans la cellule j4
Avec une image faisant référence à un nom (exemple : Bp_Fl_Be_Ch_Er_Type_01_Var.b_001.jpg) en cellule I2
Particularité:
Listing d'image se trouvant dans un dossier
Ajuster cette image en haut à gauche de la cellule J4 Avec un format de 70% à l'original (soit 3,3 cm)
Celle-ci doit changer quand le nom change en cellule I2....
Je ne sais pas si j'ai été clair..mais je vous remercie par avance pour vos réponses.
Cordialement
Grib17
A voir également:
- Insertion d'une image en VBA ... lorsque son nom change ...et +
- Insertion d'une image en VBA ... lorsque son nom change ...et + ✓ - Forum - Excel
- Insertion et suppression image excel VBA ✓ - Forum - VB / VBA
- Insertion image en vba ✓ - Forum - VB / VBA
- Probleme d'insertion d'image en vba ✓ - Forum - Access
- Image userform vba ✓ - Forum - Excel
4 réponses
skk201
- Messages postés
- 938
- Date d'inscription
- jeudi 11 septembre 2008
- Statut
- Membre
- Dernière intervention
- 16 octobre 2016
A mon avis c'est possible, il faut faire en sorte que la macro s'active lorsque la valeur de la cellule I2 change.
Et définir une vraiable comme étant le contenu de la cellule I2 pour que la Macro sache quel image importé.
Utilise l'enregisteuse de macro dans excel pour trouver le code que tu ne connais pas.
Et définir une vraiable comme étant le contenu de la cellule I2 pour que la Macro sache quel image importé.
Utilise l'enregisteuse de macro dans excel pour trouver le code que tu ne connais pas.
Grib17
- Messages postés
- 5
- Date d'inscription
- lundi 3 mars 2014
- Statut
- Membre
- Dernière intervention
- 5 mars 2014
Merci SKK201 pour cet itinéraire à suivre. Je vais chercher dans ce sens là.
Je vous tiens au curant de l'évolution de mon travail.
Cordialement,
Je vous tiens au curant de l'évolution de mon travail.
Cordialement,
michel_m
- Messages postés
- 16376
- Date d'inscription
- lundi 12 septembre 2005
- Statut
- Contributeur
- Dernière intervention
- 25 janvier 2021
Bonjour,
Ci joint exemple du choix d'une image(photo) par changement du nom de l'image (ici le N° matricule d'un agent d'une société); les formats admis: jpg,jpeg,png, gif
la dimension de ta photo est donné par la construction d'une forme image (shape) nommé "photo" dans la cellule (ici, à gauche)
Les dimensions et positions sont donnés par les propriétés height, width, top, left: il faut souvent tatonner; la largeur de la cellule , et non de la forme, dans ton cas sera de 3,3 cm
maintenant, utiliser l'enregistreur, je veux bien mais...
https://www.cjoint.com/?3CfjHrG19Jk
En espèrant que...
Ci joint exemple du choix d'une image(photo) par changement du nom de l'image (ici le N° matricule d'un agent d'une société); les formats admis: jpg,jpeg,png, gif
la dimension de ta photo est donné par la construction d'une forme image (shape) nommé "photo" dans la cellule (ici, à gauche)
Les dimensions et positions sont donnés par les propriétés height, width, top, left: il faut souvent tatonner; la largeur de la cellule , et non de la forme, dans ton cas sera de 3,3 cm
maintenant, utiliser l'enregistreur, je veux bien mais...
https://www.cjoint.com/?3CfjHrG19Jk
En espèrant que...
Grib17
- Messages postés
- 5
- Date d'inscription
- lundi 3 mars 2014
- Statut
- Membre
- Dernière intervention
- 5 mars 2014
Bonsoir,
Merci Michel_M pour ton investissement,
Voici avec l'aide d'un ami qui touche un peu aussi au VBA une solution qui corrige également des erreurs de caractères (espace,_).
J'ai trouvé ce que je cherchai et cela fonctionne parfaitement.
Merci pour ces pistes qui nous ont bien aidés à obtenir ce travail.
Cordialement à tous.
Merci
Grib17
Voici le code ainsi développé:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim path As String
Dim image_nom As String
On Error GoTo pbPathImage
'Sort si plusieurs celulles de sélectionnées
If Target.Count > 1 Then Exit Sub
'Sort si autre cellule que l6
If Target.AddressLocal = "$H$13" Then
'modifie le chemin de l'image en j4
For Each img In ActiveSheet.Shapes
img.Delete
Next
'là où l'image va s'inserer
Range("I2").Select
image_nom = ActiveSheet.Range("M2").Value
image_nom = Replace(image_nom, " ", "")
image_nom = Replace(image_nom, "-", "_")
path = ThisWorkbook.path & "\Photographies\01-Collection complete BR+BP\" & image_nom & ".jpg"
'path = "\Photographies\Categorie\ Fiches\BP_Fl_Be_Ch_Er_Type_02_Var.a_001.jpg"
ActiveSheet.Shapes.AddPicture path, False, True, 400, 20, 90, 90
End If
Exit Sub
pbPathImage:
MsgBox Err & ": " & Error(Err) & vbCrLf & "Attend l'image : " & path
End Sub
Merci Michel_M pour ton investissement,
Voici avec l'aide d'un ami qui touche un peu aussi au VBA une solution qui corrige également des erreurs de caractères (espace,_).
J'ai trouvé ce que je cherchai et cela fonctionne parfaitement.
Merci pour ces pistes qui nous ont bien aidés à obtenir ce travail.
Cordialement à tous.
Merci
Grib17
Voici le code ainsi développé:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim path As String
Dim image_nom As String
On Error GoTo pbPathImage
'Sort si plusieurs celulles de sélectionnées
If Target.Count > 1 Then Exit Sub
'Sort si autre cellule que l6
If Target.AddressLocal = "$H$13" Then
'modifie le chemin de l'image en j4
For Each img In ActiveSheet.Shapes
img.Delete
Next
'là où l'image va s'inserer
Range("I2").Select
image_nom = ActiveSheet.Range("M2").Value
image_nom = Replace(image_nom, " ", "")
image_nom = Replace(image_nom, "-", "_")
path = ThisWorkbook.path & "\Photographies\01-Collection complete BR+BP\" & image_nom & ".jpg"
'path = "\Photographies\Categorie\ Fiches\BP_Fl_Be_Ch_Er_Type_02_Var.a_001.jpg"
ActiveSheet.Shapes.AddPicture path, False, True, 400, 20, 90, 90
End If
Exit Sub
pbPathImage:
MsgBox Err & ": " & Error(Err) & vbCrLf & "Attend l'image : " & path
End Sub