Copier une image dans la cellule active
Résolu/Fermé
ESCOUGER
Messages postés
31
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
17 juillet 2019
-
Modifié par ESCOUGER le 19/10/2011 à 10:53
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 - 20 oct. 2011 à 09:58
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 - 20 oct. 2011 à 09:58
A voir également:
- Copier une image dans la cellule active
- Aller à la ligne dans une cellule excel - Guide
- Copier une vidéo youtube - Guide
- Image iso - Guide
- Super copier - Télécharger - Gestion de fichiers
- Comment agrandir une image - Guide
3 réponses
UsulArrakis
Messages postés
7405
Date d'inscription
vendredi 28 mars 2003
Statut
Contributeur
Dernière intervention
27 janvier 2022
3 182
19 oct. 2011 à 12:42
19 oct. 2011 à 12:42
quel logiciel et quelle version ?
si c'est pour excel : on ne peut pas mettre d'image dans une cellule
si c'est pour excel : on ne peut pas mettre d'image dans une cellule
ESCOUGER
Messages postés
31
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
17 juillet 2019
19 oct. 2011 à 16:08
19 oct. 2011 à 16:08
C'est en effet pour excel, mais il s'agit plutôt dune forme que d'une image.
J'ai inseré une forme dans ma feuille, et j'ai assigné une macro à cette forme. Ce que je souhaite faire est de recopier cette forme à l'endroit de la cellule active.
Exemple: Je selectionne la cellule A1, puis je clique sur ma forme qui se situe ailleurs. Cela déclenche une macro à qui je demande de copier cette forme à l'endroit de la cellule active soit A1. (Je précise qu'il s'agit de toutes petites formes (sorte d'icônes) qui sont des repaires de balisages de sentiers de randonnée.
J'ai inseré une forme dans ma feuille, et j'ai assigné une macro à cette forme. Ce que je souhaite faire est de recopier cette forme à l'endroit de la cellule active.
Exemple: Je selectionne la cellule A1, puis je clique sur ma forme qui se situe ailleurs. Cela déclenche une macro à qui je demande de copier cette forme à l'endroit de la cellule active soit A1. (Je précise qu'il s'agit de toutes petites formes (sorte d'icônes) qui sont des repaires de balisages de sentiers de randonnée.
ESCOUGER
Messages postés
31
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
17 juillet 2019
19 oct. 2011 à 16:11
19 oct. 2011 à 16:11
Je peux vous transmettre mon tableau si çà peut aider, mais ne sait pas comment faire?
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
19 oct. 2011 à 16:32
19 oct. 2011 à 16:32
Bonjour,
Un exemple :
pour déposer un fichier : cijoint.fr et coller ici le lien fourni.
eric
Un exemple :
Private Sub Image1_Click() ActiveSheet.Shapes("Image1").Copy ActiveSheet.Paste Selection.ShapeRange.Left = ActiveCell.Left + 2 Selection.ShapeRange.Top = ActiveCell.Top + 2 End Sub
pour déposer un fichier : cijoint.fr et coller ici le lien fourni.
eric
ESCOUGER
Messages postés
31
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
17 juillet 2019
19 oct. 2011 à 16:59
19 oct. 2011 à 16:59
Merci beaucoup Erilic, çà marche exactement comme je le voulais
Problème résolu 100%
Problème résolu 100%
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
19 oct. 2011 à 17:10
19 oct. 2011 à 17:10
ok :-)
n'oublie pas de mettre en résolu
eric
n'oublie pas de mettre en résolu
eric
ESCOUGER
Messages postés
31
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
17 juillet 2019
19 oct. 2011 à 23:06
19 oct. 2011 à 23:06
Encore une précision pour améliorer mon code:
Comment récupérer dans une variable le nom de la forme sur laquelle j'ai cliqué.
exemple: Signe_balisage= ActiveSheet.Shapes.Name (sauf que name n'est pas le bon code)
Merci
Comment récupérer dans une variable le nom de la forme sur laquelle j'ai cliqué.
exemple: Signe_balisage= ActiveSheet.Shapes.Name (sauf que name n'est pas le bon code)
Merci
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
19 oct. 2011 à 23:54
19 oct. 2011 à 23:54
Heuuu, bonne question...
Je ne sais pas répondre à ta question sinon que l'évènement click porte son nom.
Par contre, les objets créés il vaut mieux les nommer lors de la création, comme ça tu connais leur nom.
Exemple court :
Bien sûr il faut un nouveau nom pour chaque forme.
eric
Je ne sais pas répondre à ta question sinon que l'évènement click porte son nom.
Par contre, les objets créés il vaut mieux les nommer lors de la création, comme ça tu connais leur nom.
Exemple court :
Private Sub Image1_Click() ActiveSheet.Shapes("Image1").Copy ActiveSheet.Paste Selection.Name = "forme12" Selection.ShapeRange.Left = ActiveCell.Left + 2 Selection.ShapeRange.Top = ActiveCell.Top + 2 End Sub
Bien sûr il faut un nouveau nom pour chaque forme.
eric
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 744
20 oct. 2011 à 09:51
20 oct. 2011 à 09:51
Salut Eriiic,
ESCOUGER,
Pour récupérer le nom d'un Shape (j'ai bien dit Shape, ce code ne fonctionne pas avec les objets issus de la boîte à outils contrôle) on peux utiliser Application.Caller.
Il suffit d'affecter cette même macro aux divers shapes de la feuille :
Ce qui, appliqué à la macro d'Eriiic ci-dessus nous donne :
Ne reste qu'à affecter (manuellement) cette macro à toutes les formes (de type Shape!) de la feuille.
ESCOUGER,
Pour récupérer le nom d'un Shape (j'ai bien dit Shape, ce code ne fonctionne pas avec les objets issus de la boîte à outils contrôle) on peux utiliser Application.Caller.
Il suffit d'affecter cette même macro aux divers shapes de la feuille :
Sub test() MsgBox Application.Caller End Sub
Ce qui, appliqué à la macro d'Eriiic ci-dessus nous donne :
Sub CopierShapeDansCellActive() Dim NomShape As String NomShape = Application.Caller ActiveSheet.Shapes(NomShape).Copy ActiveSheet.Paste Selection.ShapeRange.Left = ActiveCell.Left + 2 Selection.ShapeRange.Top = ActiveCell.Top + 2 End Sub
Ne reste qu'à affecter (manuellement) cette macro à toutes les formes (de type Shape!) de la feuille.