Controler le nombre de cellules de mon fichier excel

Fshow Messages postés 6 Date d'inscription dimanche 17 juin 2012 Statut Membre Dernière intervention 14 juillet 2013 - 14 juil. 2013 à 14:29
cormandyr Messages postés 600 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 8 juillet 2016 - 16 juil. 2013 à 13:34
Bonsoir je travaille sur les fichiers excel mais j'ais des concernant a un petit contrôle du nombre de cellule de mon fichier je n'arrive pas à le faire correctement j'ai besoin de l'aide?
merci d'avance
public void parcouriRep(String fichiers, String destination) throws FileNotFoundException {
// définir la liste de fichier à parcourir
File[] currents = new File(fichiersRecus).listFiles(new FileFilter() {
@Override
public boolean accept(File file) {
return file.getName().endsWith(".xls");
}
});
// affichier le nombre de fichier dans le repertoire
System.out.println("Fichiers en attente de traitement: "
+ currents.length);

int codeErr = 0;

// int nbfichier = 0;

if (currents != null && currents.length > 0) {

Workbook wbEnregistrement = new HSSFWorkbook();
List<CellStyle> styleListEnregistrement = new ArrayList<CellStyle>();
// pour pouvoir rafraichir les formules ? la fin
List<FormulaInfo> formulaInfoListEnregistrement = new ArrayList<FormulaInfo>();

Workbook wbAutrelignes = new HSSFWorkbook();
// pour g?rer les styles de autres lignes
List<CellStyle> styleListAutresLignes = new ArrayList<CellStyle>();

List<FormulaInfo> formulaInfoListAutresLignes = new ArrayList<FormulaInfo>();

for (int i = 0; i < currents.length; i++) {

codeErr = 0;
System.out.println("Traitement du fichier: "
+ currents[i].getName() + " ....");

// r?cuperer le nom du fichier
File fichier = currents[i];
                                InputStream fp=new FileInputStream(fichier);
                                //String namefile=fichier.getName();
try {
 
nbfichier = currents.length;

// on copie (on copie la ligne de titre de autrelignes
// uniquement pour la premier fichier)
                                  HSSFWorkbook   wbEntree=new HSSFWorkbook(fp);
             HSSFSheet sheetEntree=(HSSFSheet) wbEntree.getSheetAt(0);
                HSSFRow row=null;
                HSSFCell cell=null;
                int lastcellnum=0;
                int lastcellEnt=0;
                for(int a=17;a<sheetEntree.getLastRowNum();a++){
                    row=sheetEntree.getRow(a);
                //si la condition est vérifier à donc au moins une cellule non vide
                if(row !=null){
                     lastcellEnt=row.getLastCellNum();
                     for(int j=1;j<lastcellEnt;j++){
                        //récuperer la cellule puis sa valeur
                         cell=row.getCell(j);
                         //for(int b=0;b<currents.length;b++){
                        // appelle la methode et celle ci lui affecte le bon typage
if (cell != null) {                           
                             lastcellnum=row.getLastCellNum();
                              if(lastcellnum!=32){
                              creeFichier(wbEntree, fichier, fichiers);
                            }else{
                            copierLignes(fichier, wbEnregistrement,
styleListEnregistrement, formulaInfoListEnregistrement, wbAutrelignes,
styleListAutresLignes, formulaInfoListAutresLignes, i == 0);
                        }

                        } 
                           
                    }
                                    }
                                    }


} catch (Throwable t) {
System.err.println("Erreur - fichier non trait? "
+ fichier.getName() + " : "
+ t.getLocalizedMessage());
t.printStackTrace();
codeErr = -100000;
} finally {
// destinationFichier(codeErr, currents[i]);
}

// refreshFormulas(wbEnregistrement,
// formulaInfoListEnregistrement);
// refreshFormulas(wbAutrelignes, formulaInfoListAutresLignes);

File enregistrementFile=new File(destination, "enregistement.xls");
System.out.println("Enregistrement resultat dans "+enregistrementFile.getName());
try {
saveTo(wbEnregistrement, enregistrementFile);
} catch (IOException e) {
System.err.println("Erreur - impossible de creer le fichier "
+ enregistrementFile + " : "
+ e.getLocalizedMessage());
e.printStackTrace();
codeErr = -100001;
}
File autresLignesFile=new File(destination, "monfichier.xls");
System.out.println("Enregistrement resultat dans "+autresLignesFile.getName());
try {
saveTo(wbAutrelignes, autresLignesFile);
} catch (IOException e) {
System.err.println("Erreur - impossible de creer le fichier "
+ autresLignesFile + " : "
+ e.getLocalizedMessage());
e.printStackTrace();
codeErr = -100001;
}
System.out.println("Traitement effectue");

}
}
}

1 réponse

cormandyr Messages postés 600 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 8 juillet 2016 11
16 juil. 2013 à 13:34
Salut,

J'avoue que je ne comprends pas très bien ta question ni ce que tu cherches à faire...
Que veux-tu dire par "un petit contrôle du nombre de cellule de mon fichier" et de quel fichier parles-tu?
0
Rejoignez-nous