Aller au contenu

[RESOLU]Convertir graph excel en image

Featured Replies

Posté(e)

Yop !

Je voudrais pouvoir récuperer des graph dans des fichiers Excel et les exporter en image .jpg de bonnes qualités :D

Tout ceci de manière automatisée (nombreux fichiers excel) et en utilisant un prog en java.

J'ai vu quelques astuces mais en visual basic (que je ne connais pas).

Quelqu'un pour me mettre sur la voie ?

:humour:

Posté(e)
  • Auteur

Non pas besoin de convertir en ODF, juste en jpg directement (si possible).

Mais au pire je prends toute les solutions possibles :humour:

edit: Seul les graph du fichier excel m'interessent, pas le reste.

Posté(e)

Te faudra une lib en Java pour pouvoir manipuler des COM si tu veux tripatouiller Excel.

Mais pourquoi vouloir le faire en Java ?

Posté(e)

As-tu regarder du côté de POI ?

http://poi.apache.org/

Y a ce code là sur cette page : http://poi.apache.org/hssf/quick-guide.html#Images

List lst = wb.getAllPictures();

for (Iterator it = lst.iterator(); it.hasNext(); ) {

HSSFPictureData pict = (HSSFPictureData)it.next();

String ext = pict.suggestFileExtension();

byte[] data = pict.getData();

if (ext.equals("jpeg")){

FileOutputStream out = new FileOutputStream("pict.jpg");

out.write(data);

out.close();

}

}

Pourquoi le faire en Java ? On se le demande ....

Posté(e)
  • Auteur

Bon, j'ai trouvé un bout de code en VB qui me fait ça. Je le mets à disposition au cas où ça puisse servir à quelqu'un :

' Procédure permettant enregistrer un graphique sélectionné dans un fichier jpeg
Sub EnregistreGraphique()
Dim NomGraph As String 'On récupére le nom graphique sélectionné
Dim Fich As String ' Adresse de reception du graphique                                                 
NomGraph = ActiveChart.Name 
Fich = "c:/......"' l'endroit où vous voulez mettre votre graphique   
ActiveChart.Export Filename:= Fich & NomGraph & ".jpg", FilterName:="JPEG" 
end sub

Pour le reste, je vais me débrouiller pour ensuite récuperer le jpg dans mon prog java.

Merci à tout le monde :ouioui:

;)

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.