IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Documents Java Discussion :

Contrôles des données d'un fichier Excel


Sujet :

Documents Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 26
    Par défaut Contrôles des données d'un fichier Excel
    Bonjour à tous,

    Voilà je dois réaliser une appli qui doit lire un fichier Excel en contrôlant les données lu.
    Par exemple, pour la première colonne de ma feuille Excel, les données doivent être d'un format numérique et doivent être de 6 caractère ni plus ni moins.

    Je sais qu'il existe une méthode pour contrôler le nombre de caractère pour une seule cellule [NBCAR()] mais avec cette méthode, on doit impérativement indiquer les cellules à contrôler et donc utiliser cette méthode X fois pour chaque cellules.

    Existerait il une méthode me permettant de contrôler tout un lot de cellule en même temps ?

    Merci d'avance

    Dark_fun

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Quelle librairie utilises-tu pour accéder aux données ?
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 26
    Par défaut
    j'utilise jxl.Workbook

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    import jxl.*;
    import jxl.Workbook;
    import jxl.read.biff.*;
    import java.io.File;
    import java.io.IOException;
    import jxl.write.WriteException;
    import java.util.Locale;
     
     
    public class ReadExcel {
    	public static void main(String[] args) throws IOException, WriteException, BiffException{
     
            try
            {
            	File f1=new File("C://Documents and Settings/../testappli.xls");
            	WorkbookSettings ws=new WorkbookSettings();
            	ws.setLocale(new Locale("er","ER"));
            	Workbook workbook=Workbook.getWorkbook(f1,ws);
             	Sheet readsheet=workbook.getSheet(0);  
     
                    for (int i = 0; i < readsheet.getRows(); i++){
            		for (int j = 0; j < readsheet.getColumns(); j++){
            			Cell cell = readsheet.getCell(i, j);
            			System.out.print(cell.getContents()+" ");
            		}
            		System.out.println();
            		}
            }
            catch(IOException e)
            {
            	e.printStackTrace();
            }
     
            catch(BiffException e)
            {
            	e.printStackTrace();
            }
    	}
    }

  4. #4
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 713
    Par défaut
    Tu arrives donc à lire chaque cellule.

    Tu peux contrôler le contenu en utilisant une expression régulière
    avec comme pattern : "[0-9]{6}" c'est à dire 6 positions numériques avec des chiffres entre 0 et 9

    bien sûr, il faut boucler sur chaque cellule, mais c'est rapide.

    Je ne suis pas expert en expression régulière, il faudrait améliorer ce modèle pour vérifier que la longueur est bien égale à 6 (et non pas plus)
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  5. #5
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Citation Envoyé par Népomucène Voir le message
    bien sûr, il faut boucler sur chaque cellule, mais c'est rapide.
    La question était :

    Existerait il une méthode me permettant de contrôler tout un lot de cellule en même temps ?
    mais j'avoue n'avoir pas de réponses, je pense comme nepomucene qu'il va falloir boucler....
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 26
    Par défaut
    Je vous remercie de vos réponses rapide !
    Je débute plus ou moins en java, est il dur de mettre en places une expression régulière ?
    Dans tous les cas, je me penche directement dessus, je vous tiens au jus

    Merci encore

  7. #7
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 713
    Par défaut
    Avec quoi (quelle bibliothèque) est-ce que tu lis ton fichier Excel ?
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Exportation des données dans un fichier Excel
    Par Koukouknizou dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 14/07/2007, 14h22
  2. Réponses: 1
    Dernier message: 14/05/2007, 14h52
  3. Réponses: 1
    Dernier message: 09/05/2007, 23h10
  4. updater des données dans mon fichier excel
    Par gantec dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 26/02/2007, 16h01
  5. Réponses: 6
    Dernier message: 08/12/2006, 13h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo