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 :

Exporter données extraite d'un SELECT vers une feuille excel


Sujet :

VB.NET

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 33
    Points : 15
    Points
    15
    Par défaut Exporter données extraite d'un SELECT vers une feuille excel
    Bonjour,

    Voilà mon problème, je dois créer une class qui importe des données via une requête SQL dans une feuille excel et je bloque sur la connexion au SQL server.

    Pouvez vous m'aider ?

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Imports Microsoft.Office.Interop
     
     
    Public Class Form1
        Public Sub MAIN()
            ' dans un événement click de bouton par exemple
            Dim xlApp As Excel.Application
     
            Try
                xlApp = GetObject(, "excel.application")
            Catch
                xlApp = New Excel.Application
            Finally
                xlApp.Visible = False
            End Try
     
            'ajout d'une page et sélection 
            Dim xsTransfert As Excel.Worksheet = xlApp.Workbooks.Add.ActiveSheet
     
            Try
                ' ici on crée la chaine de connexion
                ' (on se connecte à SQL Server dans notre exemple)
                With xsTransfert.QueryTables.Add(Connection:="ODBC;DRIVER=SQL Server;SERVER=NEPTUNE;APP=Microsoft® Query;DATABASE=absyss_test;Integrated Security=True")
    Destination:=xsTransfert.Range("A1")
                    .CommandText = "SELECT toto FROM toto" ' ou requete SELECT
                    .Name = "toto"
                    .FieldNames = True
                    .RowNumbers = True
                    .FillAdjacentFormulas = False
                    .PreserveFormatting = True
                    .RefreshOnFileOpen = False
                    .BackgroundQuery = True
                    .RefreshStyle = Excel.XlCellInsertionMode.xlOverwriteCells
                    .SavePassword = False
                    .SaveData = False
                    .AdjustColumnWidth = True
                    .RefreshPeriod = 0
                    .PreserveColumnInfo = True
                    .Refresh(BackgroundQuery:=False)
                End With
     
                ' affichage 
                xlApp.Visible = True
            Catch ex As Exception
                MessageBox.Show(ex.Message)
            End Try
        End Sub
    End Class

    si vous avez des pistes ou un truc à me proposer, de plus j'ai importe la bibliothèque microsoft office librairy 11 mais il refuse mon import Microsoft.Office.Interop

    Ai-je oublié une dll ou un truc du genre ?

    Merci et bonne journée

  2. #2
    Candidat au Club
    Inscrit en
    Décembre 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Bonjour,

    Voilà , je travaille dejà avec Excel via vb.net

    Alors premierement il faut ajouter la reference d'excel dans votre projet :

    Projet -> Ajouter une reference -> COM ->Microsoft Excel 12.0 Object Library

    et aussi

    Microsoft Excel 5.0 Object Library

    et au niveau de l'importation tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Imports Excels = Microsoft.Office.Interop.Excel
     
     
       'Declaration
        Dim xlApp As Excels.Application
        Dim xlWorkBook As Excels.Workbook
        Dim xlWorkSheet As New Excels.Worksheet
        Dim misValue As Object = System.Reflection.Missing.Value
    essaye avec ça et repond moi

  3. #3
    Membre habitué
    Inscrit en
    Mars 2006
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 237
    Points : 143
    Points
    143
    Par défaut
    Bonjour,

    Tu peux jeter un coup d'oeil sur le lien suivant, tu trouveras peut être une réponse à ta question.

    http://support.microsoft.com/kb/316934

    Bon courage,
    Serviable

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2005
    Messages
    483
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 483
    Points : 309
    Points
    309
    Par défaut
    Bonjour,

    Je travaille moi aussi sur une application qui extrait des données depuis MsSql afin d'effectuer des traitements et de générer un fichier excel en sortie.

    Je voulais savoir a quoi correspond :

    Dim misValue As Object = System.Reflection.Missing.Value
    ++

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 33
    Points : 15
    Points
    15
    Par défaut
    J'ai trouver ma reponse

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
     
    Imports Excel
     
    Public Class Form2
        Private Sub Form2_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated
            ' dans un événement click de bouton par exemple
            Dim xlApp As New Excel.Application
            'Si mon fichier existe je le delete
            If System.IO.File.Exists("C:\toto.xls") = True Then
                Kill("C:\toto.xls")
            End If
            'ajout d'une page et sélection 
            Dim xsTransfert As Excel.Worksheet = xlApp.Workbooks.Add.ActiveSheet
     
            Try
                ' ici on crée la chaine de connexion
                ' (on se connecte à SQL Server dans notre exemple)
                With xsTransfert.QueryTables.Add(Connection:="ODBC;DRIVER=SQL Server;SERVER=NEPTUNE;APP=Microsoft® Query;DATABASE=absyss_test;Integrated Security=True", Destination:=xsTransfert.Range("A1"))
                    .CommandText = ' ou requete SELECT"
                    .Name = "feuil1"
                    .FieldNames = True
                    .RowNumbers = True
                    .FillAdjacentFormulas = False
                    .PreserveFormatting = True
                    .RefreshOnFileOpen = False
                    .BackgroundQuery = True
                    .RefreshStyle = Excel.XlCellInsertionMode.xlOverwriteCells
                    .SavePassword = False
                    .SaveData = True
                    .AdjustColumnWidth = True
                    .RefreshPeriod = 0
                    .PreserveColumnInfo = True
                    .Refresh(BackgroundQuery:=False)
                End With
     
                ' affichage 
                xlApp.Visible = False
                'Gestion d'erreur
            Catch ex As Exception
                MsgBox("Va bosser ca marche pas !")
                MessageBox.Show(ex.Message)
            End Try
            'Sauvegarder le resultat de la requete SQL qui est copier dans mon fichier Excel
            xsTransfert.SaveAs("C:\toto.xls")
            'Pour enlever le message "voulez vous sauvegarder..."
            xlApp.DisplayAlerts = True
            'Quit Excel
            xlApp.Quit()
            'Libérer les ressources
            xlApp = Nothing
            xsTransfert = Nothing
            'Detruire les process EXCEL.EXE
            GC.Collect()

    j'ai levé un nouveau topic pour la suite de cette appli justement

    http://www.developpez.net/forums/d87...-info-bts-pti/

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

Discussions similaires

  1. [Toutes versions] lecture et redirection de données d'un fichier .txt vers une feuille Excel
    Par Max_F dans le forum Excel
    Réponses: 1
    Dernier message: 30/10/2014, 22h46
  2. Transfert de données issues d'un formulaire vers une feuille excel
    Par elo1989 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 26/01/2014, 23h11
  3. Réponses: 12
    Dernier message: 05/12/2007, 17h03
  4. Réponses: 8
    Dernier message: 12/10/2007, 12h54
  5. [Système] Exporter vers une feuille excel précise
    Par Lucio dans le forum Langage
    Réponses: 2
    Dernier message: 20/06/2006, 11h42

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