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

VB.NET Discussion :

recuperer des informations d'une feuille excel


Sujet :

VB.NET

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Octobre 2008
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut recuperer des informations d'une feuille excel
    Bonjour,

    Je souhaite recuperer des informations situees dans une feuille excel independante. Je souhaite recuperer ces informations pour ensuite les reutiliser dans une combobox (des infos tirees de la feuille excel constitueraient les differents choix dans la combobox).J'ai deja essayer de recuperer ces donnees en utilisant les bases de donnees mais je ne sais pas comment faire pour que les donnees recuperees soient utilisees dans la combobox.

    Quelqu'un peut-il m'aider svp ?

  2. #2
    Rédacteur/Modérateur
    Avatar de Skalp
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 694
    Points : 2 927
    Points
    2 927
    Par défaut
    Citation Envoyé par vakabon972 Voir le message
    J'ai deja essayer de recuperer ces donnees en utilisant les bases de donnees mais je ne sais pas comment faire pour que les donnees recuperees soient utilisees dans la combobox.
    Peux-tu nous montrer ce que tu as fais jusqu'ici (un morceau de code serait le bienvenu).
    Je n'ai pas très bien compris à quel niveau tu es bloqué.

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Octobre 2008
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    J'utilise ce code:

    Sub extractionValeurCelluleClasseurFerme()
    Dim Source As ADODB.Connection
    Dim Rst As ADODB.Recordset
    Dim ADOCommand As ADODB.Command
    Dim Fichier As String, Cellule As String, Feuille As String
    Cellule = "A3:A8"
    Feuille = "Sheet1$"
    Fichier = "S:\Eksterne Konsulenter\Emmanuel\Pressure shell\Design table\Housing assembly.xls"
    Set Source = New ADODB.Connection
    Source.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=" & Fichier & ";Extended Properties=""Excel 8.0;HDR=No;"";"
    Set ADOCommand = New ADODB.Command
    With ADOCommand
    .ActiveConnection = Source
    .CommandText = "SELECT * FROM [" & Feuille & Cellule & "]"
    End With
    Set Rst = New ADODB.Recordset
    Rst.Open ADOCommand, , adOpenKeyset, adLockOptimistic
    Set Rst = Source.Execute("[" & Feuille & Cellule & "]")

    '(c'est ici que j'ai un probleme)
    Range("B2").CopyFromRecordset Rst
    Rst.Close
    Source.Close
    Set Source = Nothing
    Set Rst = Nothing
    Set ADOCommand = Nothing
    End Sub

    J'ai donc un probleme lorsque j'essaie de recuperer les donnees enregistrees, car dans tous les exemples que j'ai trouve, les donnees sont reecrites dans la feuille excel (comme ici) or moi je voudrais les utiliser dans une combobox.

    Voila j'espere aue cette fois c'est un peu plus clair,sinon n'hesitez pas a me redemander des precisions

  4. #4
    Rédacteur/Modérateur
    Avatar de Skalp
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 694
    Points : 2 927
    Points
    2 927
    Par défaut
    Si je comprends bien, tu essayes de récupérer la cellule B2, alors que tu n'a sélectionné que la colonne A : Cellule = "A3:A8"

    Ceci dit les Recordset ADO, c'est un peu vieillot comme technique.
    Je te propose plutôt d'utiliser une connection OleDb :
    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
    Dim cnx As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\Classeur1.xls;Extended Properties=""Excel 8.0;HDR=No;IMEX=1"";")
    Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM [Feuil1$A1:E3]")
    cmd.Connection = cnx
     
    cnx.Open()
    Dim reader As OleDbDataReader = cmd.ExecuteReader()
     
    If (reader.HasRows) Then
     
        While (reader.Read())
     
            ' Ici, tu récupères tes valeurs...
            ' Par exemple
            Console.WriteLine(reader.GetValue(1).ToString() & " " & reader.GetValue(1).ToString())
     
        End While
    End If
     
    reader.Close()
    cnx.Close()
    N'oublie pas d'importer la bibliothèque OleDb : Imports System.Data.OleDb.

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Octobre 2008
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Non en fait dans le code aue j'avais mis j'essayais de copier le colonne A a partir de la case B2. Mais ce que je veux faire justement c'est pouvoir copier cette colonne dans le menu deroulant d'une combobox afin que les differentes valeurs recuperees de cette colonne servent comme choix.
    Sinon j'ai essaye de faire marcher ton exemple mais j'y arrive pas pourtant j'ai importe la librairie OleDb.

  6. #6
    Rédacteur/Modérateur
    Avatar de Skalp
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 694
    Points : 2 927
    Points
    2 927
    Par défaut
    J'imagine que tu as renseigné correctement le nom du fichier, le nom de la feuille et la plage de cellule à sélectionner...

    Quel message d'erreur as-tu ?

Discussions similaires

  1. Utilisation des Checkbox d'une feuille excel
    Par Abdex dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/01/2007, 18h16
  2. recupere des donnes d'une page excel
    Par marouane2010 dans le forum Visual C++
    Réponses: 3
    Dernier message: 19/11/2006, 10h03
  3. Importer des données d'une feuille Excel vers TABLE
    Par souminet dans le forum Bases de données
    Réponses: 1
    Dernier message: 07/11/2006, 09h10
  4. Problème de lecture des cellules dans une feuille Excel
    Par wangjun dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/10/2006, 09h35
  5. [CR]Importer des données d'une feuille excel
    Par rolan dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 17/12/2004, 22h32

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