dokoeur
Messages postés4Date d'inscriptionmercredi 7 janvier 2004StatutMembreDernière intervention17 mai 2006
-
27 sept. 2005 à 23:29
dokoeur
Messages postés4Date d'inscriptionmercredi 7 janvier 2004StatutMembreDernière intervention17 mai 2006
-
28 sept. 2005 à 14:23
Bonjour,
j'ai un petit souci. Je voudrai insérer une image dans une feuille excel a partir de Vb. J'ai trouvé des codes pour le faire, cependant aucun d'entre eux ne me donner la possibilite de modifier les attribues de l'image (redimmensionner, deplacer...). Si quelqu'un pouvais m'aider... Merci d'avance !
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201822 28 sept. 2005 à 00:46
Salut, c'est un peu barbare comme code je l'ai fait vite fait (tester chez moi sa marche) mais les dernières lignes ou je ferme l'appli je suis moins sur je viens de les rajouter sans tester.
Donc dans l'exemple pour vb je suis partis d'un fichier excel classeur1.xls vide par défaut lorsqu'on ouvre un nouveau classeur.
Tu adapteras selon tes besoins
Voila en gros quelques possibilités de manipulations des attributs d'une image. mais tu trouveras plus d'aide dans l'aide vba dans excel...
Dim w As New Workbook
Set w = Workbooks.Open("c:\classeur1.xls")
'selectionne la premier feuille et insert et selectionne l'image
w.Sheets(1).Pictures.Insert("c:\mes images\MonImage01.jpg").Select
'redimensionne l'image (2 c le ratio met 2 pour doubler, 0.5 pour diminuer la taille de ton image)
Selection.ShapeRange.ScaleWidth 2 , msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 2, msoFalse, msoScaleFromTopLeft
'je change la luminosité et le contrast (exemple)
'valeur de 0 à 1
Selection.ShapeRange.PictureFormat.Brightness = 0.63
Selection.ShapeRange.PictureFormat.Contrast = 0.24
'je déplace mon image (les valeurs sont en pixel)
Selection.ShapeRange.IncrementLeft 154.5
Selection.ShapeRange.IncrementTop 120.75
'je rogne mon image à gauche et en bas
'14,17 = 0.5 cm (à toi de faire les conversions je ne les ais plus en tete)
'0# = aucun rognage
Selection.ShapeRange.PictureFormat.CropLeft = 14.17
Selection.ShapeRange.PictureFormat.CropRight = 0#
Selection.ShapeRange.PictureFormat.CropTop = 0#
Selection.ShapeRange.PictureFormat.CropBottom = 14.17
dokoeur
Messages postés4Date d'inscriptionmercredi 7 janvier 2004StatutMembreDernière intervention17 mai 2006 28 sept. 2005 à 14:23
Niquouel chrome, je te remerci pour ton code. Je l'ai failement adapté pour mon appli. Ca faisait quelques jours que je cherchais une solution. Je te remerci.