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

 

Discussion: Lire un fichier .XLS [Débutant]

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    juin 2017
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2017
    Messages : 36
    Points : 15
    Points
    15

    Par défaut Lire un fichier .XLS

    Bonjour Bonjour,


    J'aimerai pouvoir lire dans un fichier .xls sans forcément avoir Exel ou tout autre logiciel externe d'installé...


    J'ai fait de nombreuse recherches web et tout ce que j'ai trouvé c'est un code C# ICI (que je n'ai pas réussi à convertir correctement en VB.NET avec un convertisseur en ligne, visual studio m'indiquait des erreurs...)

    J'ai également trouvé un code VB.NET ICI

    Voici le code (du second lien) avec quelques transformations pour convenir à mon utilisation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Imports xls = Microsoft.Office.Interop.Excel
    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
            'variables pour excel
            Dim appXls As xls.Application
            Dim sheet As xls.Worksheet
     
            appXls = New xls.Application
            appXls.Visible = False
     
            appXls.Workbooks.Open("C:\Users\Kamikazoide\Dropbox\Applications\SCANPET\SuperMarc_20180106_1936.xls")
     
            sheet = CType(appXls.ActiveWorkbook.Worksheets("Data"), xls.Worksheet)
            'sheet.Application.Calculation = Microsoft.Office.Interop.Excel.XlCalculation.xlCalculationManual
            For i = 2 To sheet.UsedRange.Rows.Count
     
                If Not sheet.Cells(i, "A").Value.ToString = "" Then
                    Dim CodeBarre As String = sheet.Cells(i, "A").Value
                    Dim Jour() As String = sheet.Cells(i, "B").Value
                    Dim Heure() As String = sheet.Cells(i, "C").Value
                    Me.CU_Refre.REFRE_LV_CodeB.Items.Add(sheet.Cells(i, "A").Value)
                End If
            Next
            appXls.Quit()
    Mais Visual studio me trouve toujours des erreurs... auriez vous une solution ou une idée à m’apporter?


    Merci beaucoup d'avance

  2. #2
    Expert éminent

    Homme Profil pro
    Développeur .NET
    Inscrit en
    janvier 2012
    Messages
    4 325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : janvier 2012
    Messages : 4 325
    Points : 8 997
    Points
    8 997
    Billets dans le blog
    23

    Par défaut

    Citation Envoyé par Kamikazoide Voir le message
    Bonjour Bonjour,

    Mais Visual studio me trouve toujours des erreurs... auriez vous une solution ou une idée à m’apporter?


    Merci beaucoup d'avance
    Ben non



    Parce que sans savoir quelles erreurs et à quelle ligne ...

    J'aimerai pouvoir lire dans un fichier .xls sans forcément avoir Exel
    Ton code t'oblige d'avoir Excel d'installé. Pour t'en sortir autrement, soit que tu trouves la définition d'un fichier xls et tu programmes quelque chose pour lire/écrire un fichier binaire du type xls.

    Soit que tu utilises xlsx, et là, tu as au moins quatre solutions :

    System.io.packaging
    SDK Open XML

    EPPlus
    ClosedXML
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    juin 2017
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2017
    Messages : 36
    Points : 15
    Points
    15

    Par défaut

    Après re-lecture effectivement mon message était assez vague.., merci quand même d'avoir pris le temps de me répondre.

    J'ai fait pas mal d'autre recherches et j'ai trouvé une technique extrêmement simple (qui ne nécessite normalement pas EXCEL)

    Alors voici la doc avec le code en C# (j'ai pris te technique n°3)

    Et voici le code parfaitement fonctionnel modifié et transformé pour le VB.NET :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Imports Net.SourceForge.Koogra.Excel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
            Dim resultat As New ArrayList()
            Dim filePath As String = "C:\Classeur1.xls"
            Dim workbook As Workbook = New Workbook(filePath)
            Dim worksheet As Worksheet = workbook.Sheets.GetByName("Feuil1")
            For NB = 0 To CDbl(worksheet.Rows.MaxRow)
                'Pour ajouter les 2 premières colonnes de chaque ligne à l'ArrayList "resultat"
                resultat.Add(worksheet.Rows(NB).Cells(0).Value.ToString & worksheet.Rows(NB).Cells(1).Value.ToString)
            Next
    Pensez à ajouter la Bibliothèque Koogra Excel BIFF Reader Library à votre projet

  4. #4
    Expert éminent

    Homme Profil pro
    Développeur .NET
    Inscrit en
    janvier 2012
    Messages
    4 325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : janvier 2012
    Messages : 4 325
    Points : 8 997
    Points
    8 997
    Billets dans le blog
    23

    Par défaut

    Si tu as des horreurs, c'est à quelle ligne et quel est le message ?

    Je vois bien que cette ligne est suspecte, mais le reste ????????????????????????????????????????????????????????????????????????


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Dim worksheet As Worksheet = workbook.Sheets.GetByName("Feuil1")
    Essaie plutôt:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Dim worksheet As Worksheet = workbook.Sheets("Feuil1")
    Mais pour le reste, je n'ai pas le temps d'aller à la pêche.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    juin 2017
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2017
    Messages : 36
    Points : 15
    Points
    15

    Par défaut

    Je me suis peut être mal exprimé

    Mon 2nd message contient un code parfaitement fonctionnel, je l'ai juste partagé pour aider ceux qui cherche également à lire un fichier .xls

    En tout cas je te remercie pour tes réponses apportées malgré mes messages pas toujours très clair

    P.S.: Si j'avais pensé à mettre le sujet en résolu ça aurai peut être aussi aidé

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

Discussions similaires

  1. lire un fichier xls depuis la 2eme ligne jusqu'a la fin
    Par teen6517 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/07/2010, 10h06
  2. lire un fichier xls avec javascript et adobe Air.
    Par darkageof62 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 11/06/2010, 15h59
  3. Lire une fichier XLS sans excel
    Par petitcoucou31 dans le forum API, COM et SDKs
    Réponses: 10
    Dernier message: 06/10/2008, 15h03
  4. Réponses: 1
    Dernier message: 02/05/2007, 09h22
  5. Lire des fichier xls
    Par jekk dans le forum Documents
    Réponses: 1
    Dernier message: 03/04/2007, 19h55

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