Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1470 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  compression automatique d'image dans excel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

compression automatique d'image dans excel

n°1241386
beberf1
qui avale une noix de coco à c
Posté le 08-11-2005 à 16:08:18  profilanswer
 

Voici le code, la partie qui me pose un problème se trouve vers la fin (en rouge)
 
Ma photo est inséré dans excel, redimentionné mais pas compressé
 
Sub photo_input()
On Error Resume Next
 
x = ActiveCell.Column
y = ActiveCell.Row
If y >= 1 And x >= 1 Then
 
choixphoto = Application.GetOpenFilename("Picture (*.jpg), *.jpg" )
 
pos1 = 1
For i = 1 To 100
posx = pos1 + 1
  pos1 = InStr(pos1 + 1, choixphoto, "\" )
  If pos1 = 0 Then Exit For
Next i
 
    np = LCase(Mid(choixphoto, posx, 20))
    ActiveSheet.Range("AR1" ).Value = np
    ActiveCell.Value = Image & ": " & np
    ActiveSheet.Pictures.Insert(choixphoto).Select
     
    Selection.ShapeRange.LockAspectRatio = msoTrue
    'hauteur de l'image
    Selection.ShapeRange.Width = 305
    x = Selection.ShapeRange.Height
    Selection.ShapeRange.Name = np
    'Décalage avec le haut de la cellule
    Selection.ShapeRange.IncrementTop
    'Décalage avec la gauche de la cellule
    Selection.ShapeRange.IncrementLeft
    'Sélectionne la colonne de la cellule active
    ActiveCell.EntireColumn.Select
    'Définit la largeur de la colonne à 12.2
    Selection.ColumnWidth = 60
    'Sélectionne la ligne
    Rows(y & ":" & y).Select
    'Définit la hauteur de la ligne à 13
    Selection.RowHeight = 235
     
    'remet le curseur dans la colonne A ligne Y
'    Range("A" & y).Select
 
    'compression des photos
    Selection.ShapeRange.PictureFormat.Brightness = 0.5
    Selection.ShapeRange.PictureFormat.Contrast = 0.5
    Selection.ShapeRange.PictureFormat.ColorType = msoPictureAutomatic
    Selection.ShapeRange.PictureFormat.CropLeft = 0#
    Selection.ShapeRange.PictureFormat.CropRight = 0#
    Selection.ShapeRange.PictureFormat.CropTop = 0#
    Selection.ShapeRange.PictureFormat.CropBottom = 0#

 
 
End If
End Sub


Message édité par beberf1 le 22-11-2005 à 10:17:14
mood
Publicité
Posté le 08-11-2005 à 16:08:18  profilanswer
 

n°1241396
beberf1
qui avale une noix de coco à c
Posté le 08-11-2005 à 16:25:53  profilanswer
 

petite info que j'ai oublié:
 
le but de la macro est d'automatiser la fonction que propose déjà excel
 
dans excel sur une image il faut faire format de l'image puis compresser puis choisir toutes les images et format web.
 
voilà

n°1245123
beberf1
qui avale une noix de coco à c
Posté le 14-11-2005 à 13:43:10  profilanswer
 

help me

n°1246060
Vobiscum
Vénérez moi !
Posté le 15-11-2005 à 15:09:28  profilanswer
 

Il semblerait qu'il ne soit pas possible d'utiliser la fonction compress de facon programmatique ...


---------------
Ce qui est affirmé sans preuve peut être nié sans preuve.
n°1246647
beberf1
qui avale une noix de coco à c
Posté le 16-11-2005 à 11:53:07  profilanswer
 

c'est vraiement pas cool

n°1246648
beberf1
qui avale une noix de coco à c
Posté le 16-11-2005 à 11:53:25  profilanswer
 

tu crois qu'il y a une autre solution

n°1246668
Vobiscum
Vénérez moi !
Posté le 16-11-2005 à 12:21:20  profilanswer
 

Je n'en sais rien ... tout ce que j'ai lu comme moyen de contourner le problème est d'utiliser un macro pour appeler la fenêtre du compress ... c'est pas le pied ...


---------------
Ce qui est affirmé sans preuve peut être nié sans preuve.
n°1246720
beberf1
qui avale une noix de coco à c
Posté le 16-11-2005 à 13:37:38  profilanswer
 

ok merci si je trouve quelquechose je mettrais les infos

n°1248508
beberf1
qui avale une noix de coco à c
Posté le 18-11-2005 à 15:43:00  profilanswer
 

Bonjour vobiscum
 
est-ce que tu as toujours sous le coude la macro qui permet de contourner le problème en appelant la fenêtre du compress
 
@+

n°1248720
Vobiscum
Vénérez moi !
Posté le 18-11-2005 à 20:48:41  profilanswer
 

beberf1 a écrit :

Bonjour vobiscum
 
est-ce que tu as toujours sous le coude la macro qui permet de contourner le problème en appelant la fenêtre du compress
 
@+


 
En fait, j'ai inséré une image via la fonction du menu "insertion->image->à partir du fichier" puis j'ai affecté une macro à l'image lorsque l'on clique dessus:
 

Code :
  1. Sub Image1_QuandClic()
  2.     Dim cbc As Office.CommandBarControl
  3.     Set cbc = CommandBars.FindControl(ID:=6382)
  4.     cbc.Execute
  5.     Set cbc = Nothing
  6. End Sub


 
la macro ouvre la fenêtre de dialogue du "compress" ...
 
Si ca peut t'être utile  :wahoo:


---------------
Ce qui est affirmé sans preuve peut être nié sans preuve.
mood
Publicité
Posté le 18-11-2005 à 20:48:41  profilanswer
 

n°1250550
beberf1
qui avale une noix de coco à c
Posté le 22-11-2005 à 10:16:53  profilanswer
 

ok merci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  compression automatique d'image dans excel

 

Sujets relatifs
Test image présente ou non.HELP : VB6 / Excel => COMPATIBILITE / DEPLOIEMENT
Mettre en ligne un fichier excelMacro excel: reduction taille des images
EXCEL : comment nommer 400 onglets automatiquement ???Gras italique et souligné pour générer une image : impossible??
[MATLAB] ACP d'une image couleurCoutour des elements d'une image
couleur contour d'une image cliquable[resolu] manipulation d'image TIFF
Plus de sujets relatifs à : compression automatique d'image dans excel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR