Piloter excel avec VB6 - insérer image [Résolu]

dokoeur 4 Messages postés mercredi 7 janvier 2004Date d'inscription 17 mai 2006 Dernière intervention - 27 sept. 2005 à 23:29 - Dernière réponse : dokoeur 4 Messages postés mercredi 7 janvier 2004Date d'inscription 17 mai 2006 Dernière intervention
- 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 !
Afficher la suite 

2 réponses

Meilleure réponse
cs_Willi 2381 Messages postés jeudi 12 juillet 2001Date d'inscription 13 février 2015 Dernière intervention - 28 sept. 2005 à 00:46
3
Merci
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

w.Sheets.Application.SaveWorkspace
w.Close (True)


Si la réponse te conviens merci de l'accepter

Merci cs_Willi 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 123 internautes ce mois-ci

dokoeur 4 Messages postés mercredi 7 janvier 2004Date d'inscription 17 mai 2006 Dernière intervention - 28 sept. 2005 à 14:23
0
Merci
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.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.