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

Delphi Discussion :

comment parcourir un fichier excel


Sujet :

Delphi

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Points : 24
    Points
    24
    Par défaut comment parcourir un fichier excel
    bonjour:
    jevoudrais parcourir un fichier excel pour pouvoir faire une comparaison du contenu de chaque cellule avec les lignes d'un fichier texte.
    J'ai ouvert le classeur et la feuille apres j'ai fait une boucle for avec un nombre qui correspond au numéro de la ligne
    tmpS:=MaFeuille.Cells.Item[i,2].Value ;
    avec cette je recupere le contenu de la cellule
    Le probleme c'est que ça ne marche pas !
    merci de me répondre ..

  2. #2
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 901
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 901
    Points : 6 026
    Points
    6 026
    Par défaut
    As-tu regardé dans la ?

    Le probleme c'est que ça ne marche pas !
    Mais encore ?
    "Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
    -----------------------
    Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
    Usus magister est optimus

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Points : 24
    Points
    24
    Par défaut
    oui j'ai deja regardé , il ya pas mal de trucs sur les fichiers excel mais il n'y a pas la réponse à mon probleme...

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 207
    Points : 188
    Points
    188
    Par défaut
    il n'y a pas la réponse à mon probleme...
    Eh bien, disons que tout ce qu'on sait de ton problème, c'est ce que tu as bien voulu en dire. A savoir :
    Le probleme c'est que ça ne marche pas !
    montres nous un bout de ton code...

    Les phrases style "ça marche pas", ça fait pas spécialement avancer le schmilblik.

    Par contre, si tu nous dis que ton code c'est "ça", que "ça" bloque sur cette ligne "là", ou que "ça" affiche tel message d'erreur, alors là, on pourrait un peu mieux t'aider, tu ne crois pas ? Mais c'est vrai que si l'intégralité de ton code est classé 'secret défense', ça va être difficile

    PS : et comment ça j'ai fait une page sur ce que QI130 a résumé en deux mots ("Mais encore ?"). Ben oui, j'étais très fort en explication de texte

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Points : 24
    Points
    24
    Par défaut
    voici le code pour ouvrir le classeur et la premiere feuille
    MonClasseur:=ExcelApplication1.Workbooks.Open('K:\Delphi\Work\SHUNTPAI\0.99\References\regles_shuntage_PAI.xls',False,False,
    EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,
    EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,0);
    MaFeuille:=MonClasseur.Worksheets[1] as _worksheet;
    ForceDirectories('K:\Delphi\Work\SHUNTPAI\0.99');

    et voici la boucle que j'ai faite pour que le programme parcourt toute la feuille(le contenu de toutes les cellules qui sont au nombre de 401)
    for i:=1 to 401 do
    begin
    MaPlage:=MaFeuille.Range['Ai',EmptyParam].EntireRow;

    tmpS:=MaFeuille.Cells.Item[i,2].Value ;
    end;

    tmpS est de type string
    alors ce que ça fait c'est qu'il repete la premire cellule 401 fois alors que je lui demande de changer de cellule à chaque fois.
    c'est peut etre la la bonne fçon de faire , si quelqu'un sait comment merci de m'aider.

  6. #6
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2003
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2003
    Messages : 582
    Points : 915
    Points
    915
    Par défaut
    le problème n'est pas dans ce bout de code...

    sauf que je ne saisie pas bien pourquoi tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    MaPlage:=MaFeuille.Range['Ai',EmptyParam].EntireRow;
    dans ta boucle...

    Met exactement ce bout code dans un bouton et essaye-le toi même...
    tmpS change à chaque fois...

    Le problème est ailleur....
    Comment dupliquer un disque...ça vous intéresse?
    Tutoriel et code source delphi ici

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Points : 24
    Points
    24
    Par défaut
    MaPlage:=MaFeuille.Range['Ai',EmptyParam].EntireRow;

    cette phrase ne sert à rien , je l'ai deja enlevé .
    Mais le probleme ne peut venir que de la boucle pq aucun autre bout du code ne traite les cellules de la feuille excel, et si j'enleve la boucle etj emets 1 à la place du i il me donnela premiere cellule ...

  8. #8
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2003
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2003
    Messages : 582
    Points : 915
    Points
    915
    Par défaut
    Et si tu met 2...à la place du i est-ce que ca te donne la 2 ème?

    noublie pas que la syntax est la suivante...
    MaFeuille.Cells.Item[ #RANGÉES, #COLONNES ].Value
    Comment dupliquer un disque...ça vous intéresse?
    Tutoriel et code source delphi ici

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Points : 24
    Points
    24
    Par défaut
    oui je le sais bien, si je remplace par 2 ça me donne la deuxieme cellule..

  10. #10
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2003
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2003
    Messages : 582
    Points : 915
    Points
    915
    Par défaut
    bien ca,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for i:=1 to 401 do
    begin
         tmpS:=MaFeuille.Cells.Item[i,2].Value ;
    end;
    ca énumère les 401 cellules!

    le problème est ailleur!
    Comment dupliquer un disque...ça vous intéresse?
    Tutoriel et code source delphi ici

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Points : 24
    Points
    24
    Par défaut
    bah merci en tout cas , je vais essayer de localiser le probleme

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

Discussions similaires

  1. [Excel] Comment lire des fichiers excel avec php?
    Par dear_rihab dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 02/11/2007, 12h38
  2. Comment parcourir un fichier texte avec une boucle ?
    Par kikica dans le forum Langage
    Réponses: 2
    Dernier message: 15/11/2005, 17h13
  3. Comment lancer un fichier Excel avec Access ??
    Par merlubreizh dans le forum Access
    Réponses: 5
    Dernier message: 12/09/2005, 14h20
  4. comment ouvrir un fichier excel ?
    Par vdavid1982 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 13/07/2005, 12h05
  5. comment fermer un fichier Excel depuis Access?
    Par audrey_desgres dans le forum Access
    Réponses: 14
    Dernier message: 21/06/2005, 12h43

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