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 :

avoir la liste des feuilles d'un classeur Excel


Sujet :

Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Algérie

    Informations forums :
    Inscription : Mars 2008
    Messages : 55
    Points : 54
    Points
    54
    Par défaut avoir la liste des feuilles d'un classeur Excel
    salut a tous
    je veux importer des données d'un fichier Excel ,j'ai inseré ce code dans TButton mais ce fichier Excel a plusieurs feuilles de calcules (Worksheets)
    est il possible d'avoir la liste des feuilles (dans un combobox par exemple) pour pouvoir acceder par le nom de la feuille :

    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
    procedure TSave.Button2Click(Sender: TObject);
    var
    Resultat:OleVariant;
    vMSExcel,vXLWorkbooks, vXLWorkbook ,vReadOnly, vLink,vWorksheet: variant;
    VFileName : AnsiString;
    begin
    Main.OpenDialog1.Filter:='Fichier Excel |*.Xls';
    if Main.OpenDialog1.Execute then
      begin
      if Main.OpenDialog1.FileName<>'' then
      Resultat := Main.OpenDialog1.FileName else exit;
      end;
    try
    vMSExcel := GetActiveOleObject('Excel.Application');
    except
    vMSExcel := CreateOleObject('Excel.Application');
    end;
    vMSExcel.Visible := true;   
    VFileName := Resultat;
    vLink := unassigned;
    vReadOnly := true;
    vXLWorkbooks := vMSExcel.Workbooks;
    vXLWorkbook := vXLWorkbooks.Open(vFileName, vLink, vReadOnly);
    salutations

  2. #2
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 374
    Points : 3 150
    Points
    3 150
    Par défaut
    Bonjour,

    Je pense que tu peux énumérer les feuilles de ton classeur comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     For i := 1 To vMSExcel.Workbooks[1].WorkSheets.count  Do
       ShowMessage('Feuille '+ IntToStr(i) + ' : ' +vMSExcel.Workbooks[1].WorkSheets[i].Name) ;
    A+

    Charly

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Algérie

    Informations forums :
    Inscription : Mars 2008
    Messages : 55
    Points : 54
    Points
    54
    Par défaut
    merci pour votre aide ,ça marche tres bien

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

Discussions similaires

  1. [XL-2010] Protection des feuilles d'un classeur Excel
    Par Vritomos dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 20/03/2014, 14h34
  2. liste déroulante avec les noms des feuilles d'un classeur fermé
    Par winclass dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/12/2008, 22h39
  3. liaisons des feuilles dans un classeur excel
    Par ritonetmumu dans le forum Excel
    Réponses: 4
    Dernier message: 07/12/2007, 19h03
  4. Liste des noms des feuilles d'un classeur
    Par marc56 dans le forum Excel
    Réponses: 10
    Dernier message: 22/09/2007, 15h49
  5. Obtenir la liste des feuilles d'un fichier Excel
    Par Jean Bonnisme dans le forum Access
    Réponses: 3
    Dernier message: 15/10/2004, 10h53

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