Atribuer un code vba à une cellule

Fermé
Michel - Modifié par baladur13 le 4/09/2016 à 15:19
ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 - 4 sept. 2016 à 15:54
Bonjour,
J'ai inséré ce code vba ci-dessous, C'est nickel, mais je voudrais attribuer cette macro à une seule cellule, puis je l'active avec un bouton de commande. Comment faire?
Bonne soirée
Michel

Public Sub insere_image()
Dim ficimg As Variant
    ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image")  ' choix nom du fichier
    ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
    With Selection.ShapeRange
        .LockAspectRatio = False        ' proportions d'origine lorsque vous la redimensionnez
        .Top = ActiveCell.Top           ' haut de la cellule
        .Left = ActiveCell.Left         ' gauche de la cellule
        .Height = ActiveCell.RowHeight  ' hauteur de la cellule
        .Width = ActiveCell.Width ' largeur de la cellule
    End With
    With Selection
        .PrintObject = True             ' l'objet est imprimé en même temps que le document
        .Placement = xlMoveAndSize      ' manière dont l'objet est lié aux cellules
    End With
End Sub



EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
A voir également:

2 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 688
4 sept. 2016 à 15:47
Bonjour,

Il te faut rajouter la ligne en gras en modifiant A1 par ton choix de cellule
    ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image")  ' choix nom du fichier
ActiveSheet.[A1].Activate
ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
0
ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 160
Modifié par ThauTheme le 4/09/2016 à 15:54
Bonjour Michel, bonjour le forum,

Dans le code, remplace ActiveCell par ta cellule. Par exemple : Range("A1"). Puis affecte au bouton de commande cette marco...

À plus,
ThauTheme
0