Controler le nombre de cellules de mon fichier excel
Fshow
Messages postés6Date d'inscriptiondimanche 17 juin 2012StatutMembreDernière intervention14 juillet 2013
-
14 juil. 2013 à 14:29
cormandyr
Messages postés600Date d'inscriptionsamedi 20 mai 2006StatutMembreDerniè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");
}
}
}
A voir également:
Controler le nombre de cellules de mon fichier excel
cormandyr
Messages postés600Date d'inscriptionsamedi 20 mai 2006StatutMembreDernière intervention 8 juillet 201611 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?