cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 2012
-
17 sept. 2004 à 16:54
Hannah023
Messages postés3Date d'inscriptionlundi 24 décembre 2007StatutMembreDernière intervention16 août 2010
-
16 août 2010 à 02:51
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Hannah023
Messages postés3Date d'inscriptionlundi 24 décembre 2007StatutMembreDernière intervention16 août 2010 16 août 2010 à 02:51
Bonjour,
Je relance cette discussion parce que j'ai un problème et je voudrai bien que quelqu'un puisse m'aider à le résoudre car c'est très urgent et très important.
J'ai un fichier excel que je veux lire et appliquer des traitements spécifiques sur son contenu.
J'ai parcouru le fichier et j'ai sauvegardé les données dans des collections et des vectors et par la suite j'ai appliqué les traitements dont j'ai besoin mais, malheureusement, j'ai pas eu de résultats et j'arrive pas à cerner le problème et trouver l'emplacement de l'erreur.
j'espère que quelqu'un puisse m'aider à trouver une solution à mon problème car c'est très très urgent, il s'agit de mon projet de fin d'étude.
Merci d'avance!
sadia7
Messages postés1Date d'inscriptionvendredi 12 février 2010StatutMembreDernière intervention12 février 2010 12 févr. 2010 à 14:16
Bonjour
Je suis vraiment débutant dans le développement. Je compte apprendre VBA mais dans quelques jours je commence.
J'ai vraiment apprécié la solution package et elle va beaucoup me servir. Je développe des
petites applications sur Excel (gestion de stocks, de trésorerie, gestion des salaires...). Je crée plusieurs fichier liés avec des liens hypertextes. Je souhaiterais constitué un pack qui permet de télécharger tous les fichiers liés en même temps. Mille merci de votre aide.
Sucana
Messages postés4Date d'inscriptionlundi 5 octobre 2009StatutMembreDernière intervention23 octobre 2009 23 oct. 2009 à 17:27
merci pour votre aide ca m'aide enormement merci encore
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 23 oct. 2009 à 16:37
Bonjour
Dans le zip se trouve un jar contenant toutes les classes nécessaires et qui lancer la démo. Le bout de code ci-dessus est une illustration de la démo, mais il doit être extrapoler en fonction de ses besoins et des APIs qu'on a (exemple, j'ai créer une api pour me faciliter la vie où j'ai une classe MyFileChooser. Dans ton cas, il faudra passer par un JFileChooser).
Le but de ce code était de montrer à l'époque un exemple d'utilisation. A partir de cet exemple, tu devrais pouvoir écrire ton propre bout de code.
Voici une classe générant des données de manières aléatoires :
/**
* Hello world!
*
*/
public class App
{
private static final Integer NB_COLUMN = 25;
private static final Integer NB_ROW = 10000;
public static void main( String[] args )
{
System.out.println("Test de JExcelApi");
// Création des données
System.out.println("Début de création des données (" + NB_COLUMN + " colonnes, " + NB_ROW + " lignes d'enregistrements avec des données aléatoires)");
List<String> headerData = new ArrayList<String>();
for(Integer i = 0; i < NB_COLUMN; i++){
headerData.add("Colonne num " + i);
}
List<List<String>> datas = new ArrayList<List<String>>();
for(Integer i = 0; i < NB_ROW; i++){
List<String> row = new ArrayList<String>();
for(Integer j = 0; j < NB_COLUMN; j++){
row.add("" + (Math.random() * 1000));
}
datas.add(row);
}
System.out.println("Fin de création des données");
// Création d'un workbook
try {
System.out.println("Création d'un workbook dans un fichier externe (test.xls)");
WritableWorkbook workbook = Workbook.createWorkbook(new File("test.xls"));
System.out.println("Fin de création d'un workbook");
// Création d'une feuille
System.out.println("Création d'une feuille ('test jxl')");
WritableSheet sheet = workbook.createSheet("test jxl", 0);
System.out.println("Fin d'une feuille");
// Insertion de l'entête
System.out.println("Insertion de l'entête");
sheet.getSettings().setDefaultColumnWidth(25);
WritableCellFormat cellFormat = new WritableCellFormat(
new WritableFont(WritableFont.COURIER, 16, WritableFont.BOLD));
cellFormat.setBorder(Border.ALL, BorderLineStyle.MEDIUM, Colour.RED);
for(Integer i = 0; i < NB_COLUMN; i++){
sheet.addCell(new Label(i, 0, headerData.get(i), cellFormat));
}
System.out.println("Fin de l'insertion de l'entête");
// Insertion des données
System.out.println("Insertion des données");
for(Integer i = 0; i < NB_ROW; i++){
List<String> rowData = datas.get(i);
Integer index = 0;
System.out.println("Fin d'enregistrement du fichier");
}
}
Bonne continuation
Sucana
Messages postés4Date d'inscriptionlundi 5 octobre 2009StatutMembreDernière intervention23 octobre 2009 23 oct. 2009 à 15:36
Bonjour,
excuse moi ma kestion paraitra bete on ne vois pas ca en cours et en plus chui debutante
je ne trouve pas de methode main dans le programme et j'ai coe l'impression kil me faut une classe MyTable etMyFileChooser je me trompe?
merci encore pour ton aide
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 23 oct. 2009 à 13:59
Bonjour,
Je crains que le package ne soit pas installé, et que tu failles le télécharger soit manuellement (puis le préciser dans ton projet Eclipse), soit en le précisant dans ton pom si ton projet est géré par Maven.
Voilà
Sucana
Messages postés4Date d'inscriptionlundi 5 octobre 2009StatutMembreDernière intervention23 octobre 2009 23 oct. 2009 à 13:15
merci pour votre reponse tres rapide j'ai essaye de tester le programme mais j'ai tellement de faute j'ai juste copie le programme et je l'ai colle dans mon environnement(eclipse je suppose ke le package y est deja installe)
sais tu peux etre ou la faute pourrais venir si le programme marche chez les autres pourkoi pas chez moi?
Merci pour vos reponses
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 23 oct. 2009 à 12:35
Bonjour,
Je ne comprends pas bien ta question en fait. Si tu veux juste consulter le fichier Excel via JXL, il suffit normalement de faire :
Workbook workbook = Workbook.getWorkbook(new File(nomEtEmplacementDeTonFichierExcel));
De là, tu pourras le manipuler via Java.
Si tu veux modifier un champ et sauvegarder ton Workbook (et donc de ne pas re-remplir ton fichier Excel), je pense qu'il faille faire cela:
WritableWorkbook workbookASauver = Workbook.createWorkbook(new File(nomEtEmplacementDeTonFichierExcel), workBook);
workbookASauver.write(); // va écraser ton fichier avec les modifications que tu as faites
Voili voilà
Sucana
Messages postés4Date d'inscriptionlundi 5 octobre 2009StatutMembreDernière intervention23 octobre 2009 23 oct. 2009 à 11:19
comment faire quand on a deja un fichier excel et que l'on veut le mettre dans java j'ai pas envie de remplir le fichier je l'ai deja sauvegarde quelque part
merc d'avance
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 7 nov. 2007 à 14:23
il n'y a pas de quoi
(\ _ /)
(='.'=) Voici Lapinou. Aidez le à conquérir le monde
(")-(") en le reproduisant
oussama83tunis
Messages postés4Date d'inscriptionsamedi 21 avril 2007StatutMembreDernière intervention14 décembre 2007 7 nov. 2007 à 14:19
aaahhh oui.merci vraiment merci..:)ça y est je l'ai eu.:) pourtant ça a été devant moi..:) allez bonne journée.
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 7 nov. 2007 à 13:45
qui permet justement de formater les cellules pour des chiffres
Voili voilà
oussama83tunis
Messages postés4Date d'inscriptionsamedi 21 avril 2007StatutMembreDernière intervention14 décembre 2007 7 nov. 2007 à 13:41
Salut je voulais vous dire que votre travail est bien util.Mais j'ai un pti problème en ce qui concerne les formats des nombres decimaux extraits.j'ai testé l'extraction des données du fichier excel que je veux lire et je n'obtient qu'une precision de 10 -3 malgré que les nombres décimaux que j'ai dans le fichier excel ont la forme de 0.324567.Je demande ton aide sur ce sujet.merci d'avance.
zahourti
Messages postés1Date d'inscriptionlundi 26 février 2007StatutMembreDernière intervention 2 mai 2007 2 mai 2007 à 08:34
merci
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 5 sept. 2006 à 12:03
ensuite créer un répertoire jexcelapi, le placer à l'intérieure et placer le répertoire au même niveau que le fichier excel.jar
voilà
adan2201
Messages postés1Date d'inscriptionlundi 26 juin 2006StatutMembreDernière intervention27 juin 2006 27 juin 2006 à 14:25
salu a tous
j'ai fait comme dans le commentaire pour utiliser ton programme
mais quand je le compile il me met package jxl.jar introuvable.
peut tu me dire ce que je dois faire? please
wissam_ibtissam
Messages postés4Date d'inscriptiondimanche 5 mars 2006StatutMembreDernière intervention 6 mars 2006 6 mars 2006 à 15:42
salut, comment on convertie un fichier Excel en un fichier XML par JAVA?
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 29 juin 2005 à 10:07
Ya pas de quoi :p (pour la licence GNU, je l'avais bien précisé dans la description de ma source, mais il est toujours utile de le repréciser)
Shadock80
Messages postés1Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention21 juin 2005 21 juin 2005 à 11:06
"NOTE IMPORTANTE : ce package est sous licence GNU (Gnuw's Not Unix). Autrement dit, ce package est gratuit, mais si on l'incorpore dans un programme qui est commercialisé ou pas, nous devons fournir non seulement le code source du package, mais de tout le programme également !!!!"
Cela fait plusieurs fois depuis que je me renseigne sur jxl que je retrouve cette erreur, donc je tiens à la corriger ici pour les prochains qui se renseigneront sur cette API :-) : jxl est sous licence GNU LGPL, et non GNU GPL.
La licence GPL oblige toute application qui utilise tout ou partie de son code a etre place sous licence GPL.
La licence LGPL permet d'utiliser son code au sein de n'importe quelle application sans imposer la licence de l'application finale. On peut donc créer une application commerciale à partir d'un programme sous licence LGPL sans problème.
Beaucoup de personnes font l'amalgame licence GNU = GPL, or il existe plusieurs licences GNU (GPL, LGPL, GFDL).
En espérant que cela évitera à de futurs utilisateurs de passer a côté de cette excellente API qu'est jxl (qui est en plus assez simple d'utilisation)
Merci à indiana_jules pour ce code bien commenté qui m'a été très utile pour la "prise en main" de cette api ;-) (pas facile de trouver des exemples, et encore moins en francais)
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 2 févr. 2005 à 09:04
La meilleure solution = que Sun l'incorpore dans son JDK/SDK. Sinon, l'installer sur chaque poste qui utilise un programme java et en modifiant le path du système afin qu'il l'utilise.
the_gaston
Messages postés8Date d'inscriptionmardi 16 mars 2004StatutMembreDernière intervention27 mars 2005 18 janv. 2005 à 09:50
Salut a tous!
j'aimerai s'aivoir comment il faut faire pour deployer Jxl pour qu'il soit utilisable par toutes les applications java
Merci et a bientot
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 4 oct. 2004 à 14:05
Ben je pense que tu analyses le fichier XML avec SAX ou DOM, et que ensuite, pour chaque gros "ensemble", l'insérer directement dans le feuille Excel, sans passer par un vector.
cs_vin100time
Messages postés2Date d'inscriptiondimanche 25 avril 2004StatutMembreDernière intervention29 septembre 2004 29 sept. 2004 à 11:54
Bravo pour ton programme, par contre, as tu une idée pour transposer un fichier xml en un fichier xls en java?
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 17 sept. 2004 à 17:27
ya pas de quoi :p
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 17 sept. 2004 à 16:54
16 août 2010 à 02:51
Je relance cette discussion parce que j'ai un problème et je voudrai bien que quelqu'un puisse m'aider à le résoudre car c'est très urgent et très important.
J'ai un fichier excel que je veux lire et appliquer des traitements spécifiques sur son contenu.
J'ai parcouru le fichier et j'ai sauvegardé les données dans des collections et des vectors et par la suite j'ai appliqué les traitements dont j'ai besoin mais, malheureusement, j'ai pas eu de résultats et j'arrive pas à cerner le problème et trouver l'emplacement de l'erreur.
j'espère que quelqu'un puisse m'aider à trouver une solution à mon problème car c'est très très urgent, il s'agit de mon projet de fin d'étude.
Merci d'avance!
12 févr. 2010 à 14:16
Je suis vraiment débutant dans le développement. Je compte apprendre VBA mais dans quelques jours je commence.
J'ai vraiment apprécié la solution package et elle va beaucoup me servir. Je développe des
petites applications sur Excel (gestion de stocks, de trésorerie, gestion des salaires...). Je crée plusieurs fichier liés avec des liens hypertextes. Je souhaiterais constitué un pack qui permet de télécharger tous les fichiers liés en même temps. Mille merci de votre aide.
23 oct. 2009 à 17:27
23 oct. 2009 à 16:37
Dans le zip se trouve un jar contenant toutes les classes nécessaires et qui lancer la démo. Le bout de code ci-dessus est une illustration de la démo, mais il doit être extrapoler en fonction de ses besoins et des APIs qu'on a (exemple, j'ai créer une api pour me faciliter la vie où j'ai une classe MyFileChooser. Dans ton cas, il faudra passer par un JFileChooser).
Le but de ce code était de montrer à l'époque un exemple d'utilisation. A partir de cet exemple, tu devrais pouvoir écrire ton propre bout de code.
Voici une classe générant des données de manières aléatoires :
/**
* Hello world!
*
*/
public class App
{
private static final Integer NB_COLUMN = 25;
private static final Integer NB_ROW = 10000;
public static void main( String[] args )
{
System.out.println("Test de JExcelApi");
// Création des données
System.out.println("Début de création des données (" + NB_COLUMN + " colonnes, " + NB_ROW + " lignes d'enregistrements avec des données aléatoires)");
List<String> headerData = new ArrayList<String>();
for(Integer i = 0; i < NB_COLUMN; i++){
headerData.add("Colonne num " + i);
}
List<List<String>> datas = new ArrayList<List<String>>();
for(Integer i = 0; i < NB_ROW; i++){
List<String> row = new ArrayList<String>();
for(Integer j = 0; j < NB_COLUMN; j++){
row.add("" + (Math.random() * 1000));
}
datas.add(row);
}
System.out.println("Fin de création des données");
// Création d'un workbook
try {
System.out.println("Création d'un workbook dans un fichier externe (test.xls)");
WritableWorkbook workbook = Workbook.createWorkbook(new File("test.xls"));
System.out.println("Fin de création d'un workbook");
// Création d'une feuille
System.out.println("Création d'une feuille ('test jxl')");
WritableSheet sheet = workbook.createSheet("test jxl", 0);
System.out.println("Fin d'une feuille");
// Insertion de l'entête
System.out.println("Insertion de l'entête");
sheet.getSettings().setDefaultColumnWidth(25);
WritableCellFormat cellFormat = new WritableCellFormat(
new WritableFont(WritableFont.COURIER, 16, WritableFont.BOLD));
cellFormat.setBorder(Border.ALL, BorderLineStyle.MEDIUM, Colour.RED);
for(Integer i = 0; i < NB_COLUMN; i++){
sheet.addCell(new Label(i, 0, headerData.get(i), cellFormat));
}
System.out.println("Fin de l'insertion de l'entête");
// Insertion des données
System.out.println("Insertion des données");
for(Integer i = 0; i < NB_ROW; i++){
List<String> rowData = datas.get(i);
Integer index = 0;
for(String cellData : rowData){
sheet.addCell(new Label(index, i + 2, cellData));
index++;
}
}
System.out.println("Fin d'insertion des données");
// Enregistrement du fichier Excel
workbook.write();
workbook.close();
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (IndexOutOfBoundsException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("Fin d'enregistrement du fichier");
}
}
Bonne continuation
23 oct. 2009 à 15:36
excuse moi ma kestion paraitra bete on ne vois pas ca en cours et en plus chui debutante
je ne trouve pas de methode main dans le programme et j'ai coe l'impression kil me faut une classe MyTable etMyFileChooser je me trompe?
merci encore pour ton aide
23 oct. 2009 à 13:59
Je crains que le package ne soit pas installé, et que tu failles le télécharger soit manuellement (puis le préciser dans ton projet Eclipse), soit en le précisant dans ton pom si ton projet est géré par Maven.
Voilà
23 oct. 2009 à 13:15
sais tu peux etre ou la faute pourrais venir si le programme marche chez les autres pourkoi pas chez moi?
Merci pour vos reponses
23 oct. 2009 à 12:35
Je ne comprends pas bien ta question en fait. Si tu veux juste consulter le fichier Excel via JXL, il suffit normalement de faire :
Workbook workbook = Workbook.getWorkbook(new File(nomEtEmplacementDeTonFichierExcel));
De là, tu pourras le manipuler via Java.
Si tu veux modifier un champ et sauvegarder ton Workbook (et donc de ne pas re-remplir ton fichier Excel), je pense qu'il faille faire cela:
WritableWorkbook workbookASauver = Workbook.createWorkbook(new File(nomEtEmplacementDeTonFichierExcel), workBook);
workbookASauver.write(); // va écraser ton fichier avec les modifications que tu as faites
Voili voilà
23 oct. 2009 à 11:19
merc d'avance
7 nov. 2007 à 14:23
(\ _ /)
(='.'=) Voici Lapinou. Aidez le à conquérir le monde
(")-(") en le reproduisant
7 nov. 2007 à 14:19
7 nov. 2007 à 13:45
ça fait un bail que je n'ai pas bossé sur cette API, mais je te conseille de regarder le tuto du créateur de l'API, notamment ce lien : http://www.andykhan.com/jexcelapi/tutorial.html#formatting%20numbers
qui permet justement de formater les cellules pour des chiffres
Voili voilà
7 nov. 2007 à 13:41
2 mai 2007 à 08:34
5 sept. 2006 à 12:03
ensuite créer un répertoire jexcelapi, le placer à l'intérieure et placer le répertoire au même niveau que le fichier excel.jar
voilà
27 juin 2006 à 14:25
j'ai fait comme dans le commentaire pour utiliser ton programme
mais quand je le compile il me met package jxl.jar introuvable.
peut tu me dire ce que je dois faire? please
6 mars 2006 à 15:42
29 juin 2005 à 10:07
21 juin 2005 à 11:06
Cela fait plusieurs fois depuis que je me renseigne sur jxl que je retrouve cette erreur, donc je tiens à la corriger ici pour les prochains qui se renseigneront sur cette API :-) : jxl est sous licence GNU LGPL, et non GNU GPL.
La licence GPL oblige toute application qui utilise tout ou partie de son code a etre place sous licence GPL.
La licence LGPL permet d'utiliser son code au sein de n'importe quelle application sans imposer la licence de l'application finale. On peut donc créer une application commerciale à partir d'un programme sous licence LGPL sans problème.
Beaucoup de personnes font l'amalgame licence GNU = GPL, or il existe plusieurs licences GNU (GPL, LGPL, GFDL).
Pour ceux qui veulent en savoir plus :
licence GNU GPL :
en anglais : http://www.gnu.org/licenses/gpl.html
en francais (traduction non officielle) : http://www.april.org/gnu/gpl_french.html
licence GNU LGPL :
en anglais : http://www.gnu.org/licenses/lgpl.html
en francais (traduction non officielle) : http://www.rodage.org/lgpl.fr.html
En espérant que cela évitera à de futurs utilisateurs de passer a côté de cette excellente API qu'est jxl (qui est en plus assez simple d'utilisation)
Merci à indiana_jules pour ce code bien commenté qui m'a été très utile pour la "prise en main" de cette api ;-) (pas facile de trouver des exemples, et encore moins en francais)
2 févr. 2005 à 09:04
18 janv. 2005 à 09:50
j'aimerai s'aivoir comment il faut faire pour deployer Jxl pour qu'il soit utilisable par toutes les applications java
Merci et a bientot
4 oct. 2004 à 14:05
29 sept. 2004 à 11:54
17 sept. 2004 à 17:27
17 sept. 2004 à 16:54