comment copier une image en adaptant sa dimension à la taille de la cellule?

jf27

XLDnaute Occasionnel
Bjr le forum,

je copie via vba une image dans une cellule.
Je souhaite faire un resize de cette image à la taille de la cellule.

Comment coder ça ?
Pour l'instant c fait comme ça, mais donc pas de resize !
Merci de votre aide:rolleyes:
@+
JF
Code:
'copy image in the active sheet
    ActiveSheet.Paste
     Selection.ShapeRange.LockAspectRatio = msoFalse
    Selection.ShapeRange.Width = 200
    Selection.ShapeRange.Height = 150
    Selection.ShapeRange.Rotation = 0#
    End If
 

Jouxte

XLDnaute Occasionnel
Re : comment copier une image en adaptant sa dimension à la taille de la cellule?

Bonjour à toutes et tous,

A essayer :

Selection.ShapeRange.ScaleWidth 0.44, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 0.44, msoFalse, msoScaleFromTopLeft

Bon courage
 

jf27

XLDnaute Occasionnel
Re : comment copier une image en adaptant sa dimension à la taille de la cellule?

un truc qui aurais pu marcher ...

selection.shaperang.width=activecell.width

sauf que la cellule ou je copie est une fusion de plusieurs cellule donc la taille correspond ici à la taille de la 1ère cellule de la fusion
 

Michel_ja

XLDnaute Occasionnel
Re : comment copier une image en adaptant sa dimension à la taille de la cellule?

Bonjour à tous, j'ai moi même écrit cette petite macro et l'objectif premier qui était de positionner les images juste au dessus des cellules qui portaient leur nom fonctionnne ! Par contre, PROBLEME, le code qui est censé redimensionner les photos à la taille de la cellule ne fonctionne pas !!! Est-ce que vous auriez le code correct ?
Merci d'avance !



Sub GestionImages()

For Each s In Sheets("feuil1").Shapes
On Error Resume Next
nom = s.Name
Set c = [E:Z].Find(What:=nom, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
Sheets("feuil1").Shapes(nom).Top = c.Top
Sheets("feuil1").Shapes(nom).Left = c.Left
Sheets("feuil1").Shapes(nom).Select
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.widht = ActiveCell.Width
Selection.ShapeRange.Height = ActiveCell.Height
End If


Next
End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : comment copier une image en adaptant sa dimension à la taille de la cellule?

Bonjour,

rempla peut être :

Code:
Selection.ShapeRange.[B][COLOR="Red"]widht[/COLOR][/B] = ActiveCell.Width

par :

Code:
Selection.ShapeRange.[COLOR="red"][B]Width[/B][/COLOR]= ActiveCell.Width

bonne journée
@+
 

Michel_ja

XLDnaute Occasionnel
Re : comment copier une image en adaptant sa dimension à la taille de la cellule?

Oh Putain !!! une faute d'orthographe en anglais et la macro ne fonctionne plus !!! non seulement il faut apprendre le VB mais en plus il faut être bilingue anglais :) !!! je plaisante. Merci Pierrot !
 

tototiti2008

XLDnaute Barbatruc
Re : comment copier une image en adaptant sa dimension à la taille de la cellule?

Bonjour à tous,

Merci de crypter le deuxième mot de ton message à l'avenir, du genre

Oh P...

après tout, ce forum est censé être tout public, donc on va essayer de surveiller un peu notre langage...
 

Discussions similaires

Statistiques des forums

Discussions
314 611
Messages
2 111 144
Membres
111 051
dernier inscrit
MANUREVALAND