Copier / Coller en tant qu'Image

  • Initiateur de la discussion Initiateur de la discussion Thekak
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Thekak

XLDnaute Nouveau
Bonjour,

Je souhaiterai dans une macro effectuer un copier / coller d'une plage de cellules sur laquelle sont collées des formes (shapes) en tant qu'image.
Le but étant ensuite de pouvoir la redimensionner pour la faire loger dans un cadre bien défini.
Est-ce que quelqu'un pourrait m'aider pour ce type de prog.
Merci,

Bruno
 
Re : Copier / Coller en tant qu'Image

Bonjour

Tu installes l'appareil photo dans la barre de lancement rapide : je ne sais dans 2007 s'il s'appelle photo ou appareil photo (il faut lister "toutes les commandes" et c'est classé par ordre alpha.

Ensuite tu utilises l'enregistreur macro et tu auras le code en principe.

Sinon reposte
 
Re : Copier / Coller en tant qu'Image

J'ai essayé avec du code utilisé pour effacer des "shapes" dans une plage de cellule, en remplaçant .delete par .select :

For Each alv In ActiveSheet.Shapes
If Not Intersect(alv.TopLeftCell, Range(Cells(1, 2), Cells(32, 39))) Is Nothing Then alv.select
Next alv

Mais seule la dernière alvéole reste sélectionnée, il faudrait pouvoir coder le maintien de la touche CTRL pour que toutes les alvéoles de la plage soient sélectionnées au fur et à mesure de la boucle For.
Après il ne resterait plus qu'à ajouter pour coller l'image :

Range("A71").Select
ActiveSheet.PasteSpecial Format:="Image (PNG)", Link:=False, DisplayAsIcon _
:=False

Si quelqu'un a une idée, je suis preneur !!!
 
Re : Copier / Coller en tant qu'Image

Bonjour

Je ne sais pas si ça marchera sur 2007 mais sur 2010 un enregistrement brut donne
Code:
Sub Macro2()
'
' Macro2 Macro
'

'
    Range("A5:B6").Select
    Range("B6").Activate
    Selection.Copy
    ActiveSheet.Shapes.AddShape(, 181.5, 260.25, 72#, 72#).Select
    ActiveSheet.Shapes.Range(Array("Picture 1")).Select
    Application.CutCopyMode = False
    Range("K5:L6").Select
    Range("L6").Activate
    Selection.Copy
    ActiveSheet.Shapes.AddShape(, 183#, 314.25, 72#, 72#).Select
    ActiveSheet.Shapes.Range(Array("Picture 2")).Select
    Application.CutCopyMode = False
End Sub

Espérant que ça aidera...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
11
Affichages
1 K
Réponses
8
Affichages
1 K
S
Réponses
29
Affichages
2 K
StanislasC
S
J
Réponses
2
Affichages
1 K
Jérémy26
J
S
Réponses
3
Affichages
2 K
N
  • Question Question
Réponses
0
Affichages
810
Ninoush_
N
A
Réponses
11
Affichages
2 K
A
W
Réponses
8
Affichages
2 K
Willmaz
W
Retour