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

C# Discussion :

[EXCEL] ouvrir le fichier à une feuille donnée


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Points : 5
    Points
    5
    Par défaut [EXCEL] ouvrir le fichier à une feuille donnée
    Bonjour,

    J'arrive à ouvrir le un fichier excel existant.
    Mais je n'arrive pas à l'ouvrir à une feuille donnée malgré les nombreuses solutions données dans d'autres posts.

    Est-ce un bug avec Excel 2007?
    pouvez-vous me dire ce qu'il manque à cette fonction par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
                Microsoft.Office.Interop.Excel.Application ExcApp = new Microsoft.Office.Interop.Excel.Application();
                ExcApp.Visible = true;
                Microsoft.Office.Interop.Excel.Workbook excelWorkbook = ExcApp.Workbooks.Open(@"Z:\Sommaire AI.xls", 0, false, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", true, false, 0, false, true, true);
     
                Microsoft.Office.Interop.Excel.Sheets ExcSheet = excelWorkbook.Worksheets;
                string currentSheet = "Feuil1";
                Microsoft.Office.Interop.Excel.Worksheet excelWorksheet = (Microsoft.Office.Interop.Excel.Worksheet)excelWorkbook.Sheets[2];//ExcSheet.get_Item(currentSheet);
                Microsoft.Office.Interop.Excel.Range excelCell = (Microsoft.Office.Interop.Excel.Range)excelWorksheet.get_Range("A1", "A1");

    Merci par avance

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Tu ne fais que déclarer des nouvelles variables, à aucun moment tu ne lui dis quelle feuille afficher...
    Ca doit être quelque chose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    excelWorkbook.ActiveSheet = excelWorkbook.Worksheets["Feuil1"];
    (pas certain que ça marche comme ça, j'ai pas testé et la doc est incomplète...)

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Merci de m'avoir remis sur la bonne voie.
    Je n'avais pas rendu active la feuille.
    Donc voici le code corrigé ( modif à la ligne 7 et ajout de la ligne 8)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
                Microsoft.Office.Interop.Excel.Application ExcApp = new Microsoft.Office.Interop.Excel.Application();
                ExcApp.Visible = true;
                Microsoft.Office.Interop.Excel.Workbook excelWorkbook = ExcApp.Workbooks.Open(@"E:\Sommaire AI.xls", 0, false, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", true, false, 0, false, true, true);
     
                Microsoft.Office.Interop.Excel.Sheets ExcSheet = excelWorkbook.Worksheets;
                string currentSheet = "feuil1";
                Microsoft.Office.Interop.Excel.Worksheet excelWorksheet = (Microsoft.Office.Interop.Excel.Worksheet)excelWorkbook.Application.Sheets["feuil1"];//ExcSheet.get_Item(currentSheet);
                excelWorksheet.Select(true);
                Microsoft.Office.Interop.Excel.Range excelCell = (Microsoft.Office.Interop.Excel.Range)excelWorksheet.get_Range("A1", "A1");

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

Discussions similaires

  1. [AC-2003] Création d'une requête et export vers Excel sur une feuille donnée
    Par nola38 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 24/01/2014, 15h23
  2. [Excel] ouvrir un fichier sans le voir à l'écran
    Par Rakham dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 10/01/2006, 15h04
  3. Excel ouvrir un fichier
    Par pinocchio dans le forum Excel
    Réponses: 10
    Dernier message: 06/12/2005, 16h41
  4. Automation excel - ouvrir un fichier sans classeur
    Par Celia1303 dans le forum Access
    Réponses: 3
    Dernier message: 23/11/2005, 20h23
  5. [Excel] comment savoir si une feuille est ouverte ?
    Par scully2501 dans le forum Access
    Réponses: 11
    Dernier message: 07/10/2005, 15h02

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