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

Dotnet Discussion :

Fichier Excel spreadsheet (extraction SAP) vers datagridview


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Alternant Supply chain
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Alternant Supply chain

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Par défaut Fichier Excel spreadsheet (extraction SAP) vers datagridview
    Bonjour à tous,

    Je développe une application qui communique avec SAP. J'arrive ouvrir le fichier Excel d'une transaction SAP mais je ne parviens pas à prendre le contrôle sur le fichier Excel nouvellement ouvert : "Feuille de calcul dans Basis(1)")

    Ce fichier excel n'a jamais été enregistré sur mon ordinateur. Je souhaite simplement copier les données du fichier de l'onglet "Feuil1" et les mettre dans mon datagridview.

    Merci pour votre aide.

  2. #2
    Inactif  

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

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Je ne connais pas SAP, mais je présume que cela ne dérange pas trop pour l'Instant.

    Ceci dit, quand tu exportes de SAP, tu obtiens quoi exactement ? Un fichier Excel déjà enregistré, ou des données dans une feuille Excel que tu dois faire enregistrer par Excel, à partir d'une application .net.

    Maintenant, si tu as déjà des notions de VBA et de pilotage de disons Word par Excel, ou d'Excel par Word etc., c'est en gros le même principe, avec l'adaptation des objets.

    Sinon, cela reste un peu plus compliqué et cela va un peu dépendre du langage que tu utilises (VB.net, C# ou autre)

    http://dotnet.developpez.com/cours/office/

    Sinon quelques exemples:

    https://code.msdn.microsoft.com/site...earchText&ac=5

    Maintenant que j'y pense, tu peux aussi importer tes données d'Excel, (ou peut-être directement de SAP, si tu peux trouver des drivers .net pour SAP)

    https://code.msdn.microsoft.com/How-...mport-3bc18090

    https://code.msdn.microsoft.com/Exce...cs-to-95adc5a1

  3. #3
    Membre à l'essai
    Homme Profil pro
    Alternant Supply chain
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Alternant Supply chain

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Par défaut
    Merci Clément pour ton aide.

    Mon code m'ouvre un fichier Excel contenant les données de SAP relatif à la nomenclature d'un article.

    Ce fichier ouvert est nommé "Feuille de calcul dans Basis(1)"

    Il comporte un onglet nommé "Feuil1".

    Je tente d'utiliser le lien que tu m'as préconisé mais Visual Studio ne reconnait pas mes codes Vb.net :

    Peut être utiliser une autre fonction que GetFullPath pour un fichier Excel non enregistré. J'essaye en vain de trouver un équivalent à ActiveSheet.

    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
    
    Public Class Gestion_Projet_Creation
    
    Private FileName As String = IO.Path.GetFullPath("Feuille de calcul dans Basis (1).xlsx")
    Private Connection As OleDb.OleDbConnection = New OleDb.OleDbConnection
    
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    
    .....
    '' ouverture du fichier Excel avec les données
    '
     If Not String.IsNullOrWhiteSpace(TextBox2.Text) Then
                        Dim ConnectionString As String = Connection(FileName)
                        Using cn As New OleDb.OleDbConnection With {.ConnectionString = ConnectionString}
                            Using cmd As New OleDb.OleDbCommand With {.CommandText = "SELECT * From [Feuil1]", .Connection = cn}
                                Using oda As New OleDbDataAdapter()
                                    Dim dt As New DataTable()
                                    cmd.CommandText = (Convert.ToString("SELECT * From [Feuil1]"))
                                    cmd.Connection = cn
    
                                    cn.Open()
    
                                    oda.SelectCommand = cmd
    
                                    oda.Fill(dt)
    
                                    cn.Close()
                                    'Populate DataGridView.
                                    DataGridView1.DataSource = dt
                                End Using
                            End Using
                        End Using
                    End If
    
    End Sub
    J'ai une erreur sur : Dim ConnectionString As String = Connection(FileName)
    An unhandled exception of type 'System.Runtime.InteropServices.COMException' occurred in Microsoft.VisualBasic.dll
    Additional information: Membre introuvable. (Exception de HRESULT : 0x80020003 (DISP_E_MEMBERNOTFOUND))

  4. #4
    Inactif  

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

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Apparemment, il te manque un bout de la chaîne de connexion.

    Tu devrais trouver dans ce coin-là:

    https://www.connectionstrings.com/excel/

    Si tu n'as pas le moteur ACE (Excel 2007 et suivants), tu peux le trouver avec les Runtime d'Access. Celui d'Access 2007 convient très bien.

Discussions similaires

  1. Interpretation date excel depuis extract SAP
    Par dedam dans le forum Excel
    Réponses: 8
    Dernier message: 31/03/2016, 09h45
  2. Réponses: 7
    Dernier message: 08/04/2010, 18h13
  3. Réponses: 3
    Dernier message: 30/04/2009, 14h06
  4. Extraction des données vers un fichier EXCEL
    Par vanesa dans le forum SQL
    Réponses: 4
    Dernier message: 29/10/2008, 15h29
  5. [VBA-Excel] et extraction SAP
    Par Gerard6969 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/06/2007, 08h42

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