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 :

comment manipuler un fichier excel depuis une dll qu'il appel lui meme


Sujet :

C#

  1. #1
    Membre averti
    Inscrit en
    Novembre 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 14
    Par défaut comment manipuler un fichier excel depuis une dll qu'il appel lui meme
    bonjour tout le monde
    j'ai créé une dll que je veux appeler depuis un fichier excel pour manipuler ce dernier, mais jai mis le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    excel.application app = new excel.application
    mais apparemment ca créé un nouveau workbook
    mais j'ai pas accés a mon workbook original qui fait appel a ma dll
    comment dois je faire je sais que je dois me debarasser du <<new>>

    merci

  2. #2
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2008
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2008
    Messages : 28
    Par défaut
    Salut,
    dis nous ce que tu veux faire de ton fichier (les actions que tu vas faire dessus...)
    regarde du côté de http://msdn.microsoft.com/en-us/libr...ice.11%29.aspx

  3. #3
    Membre extrêmement actif
    Inscrit en
    Avril 2008
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 573
    Par défaut manipluer fichier excel par dll
    bonjour,
    voici un programme principal avec un classeur excel ,qui appelle une dll qui modifie le classeur:
    -tu ajoute un bouton btnFichierExcel
    -il faut faire ajouter une reference au projet manipExcel
    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
     
    'Programme WinAppExcel principal
    Imports Microsoft.Office.Interop
    Imports manipExcel
    Public Class Form1
        Public Sub New()
     
            ' Cet appel est requis par le Concepteur Windows Form.
            InitializeComponent()
     
            ' Ajoutez une initialisation quelconque après l'appel InitializeComponent().
     
        End Sub
     
           Private Sub btnFichierExcel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFichierExcel.Click
            Dim monFich As String = ""
            OpenFileDialog1.Filter = "Fichier Excel(*.xls)|*.xls"
            If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
                monfich = OpenFileDialog1.FileName
                If Len(monFich) = 0 Then
                    MessageBox.Show("entrer nom fichier svp...")
                End If
                Call Traitement(monfich)
            End If
        End Sub
        Sub Traitement(ByVal nomfich As String)
            Dim monAppExcel = New Excel.Application
            Dim monClass As Excel.Workbook = monAppExcel.Workbooks.Open(nomfich)
            Dim maFeuille As Excel.Worksheet = monClass.Worksheets(1)
            monAppExcel.Visible = True
            Dim objCalcul As dllDansExcel = New dllDansExcel
            objCalcul.Calculs(maFeuille)
        End Sub
    End Class
    voici le projet bibliotheque manipExcel de classes de la DLL à creer:
    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
     
     
    'Projet manipExcel  qui contient la DLL qui modifie le classeur
    Imports Microsoft.Office.Interop
    Public Class dllDansExcel
        Public Sub Calculs(ByVal maFeuile As Excel.Worksheet)
            Dim rng1, rng2, rngResultat, titre As Excel.Range
            rng1 = maFeuile.Cells(1, 2)
            rng2 = maFeuile.Cells(2, 2)
            rngResultat = maFeuile.Cells(3, 2)
            titre = maFeuile.Cells(3, 1)
     
            titre.Value = "Produit :"
            rng1.Value = 15.25
            rng2.Value = 45.27
            rngResultat.Value = rng1.Value * rng2.Value
     
     
        End Sub
     
     
    End Class
    comme l'as dit aurel_le_ouf tu peux faire un tas de choses variees ,il faut dire ce que tu envisages exactement,pour etre bien oriente...
    bon code...

Discussions similaires

  1. Peut-on manipuler un fichier excel depuis une extension FF
    Par GandalfZeGrey dans le forum Autres langages pour le Web
    Réponses: 0
    Dernier message: 08/12/2011, 00h32
  2. Ouverture fichier excel depuis une servlet
    Par cecjahan dans le forum Servlets/JSP
    Réponses: 0
    Dernier message: 08/09/2008, 14h03
  3. Comment manipuler plusieurs fichiers Excel
    Par Olivier0 dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 16/08/2007, 08h38
  4. [Excel] Génération de fichier excel depuis une base de donnée MySQL
    Par wiama dans le forum Bibliothèques et frameworks
    Réponses: 11
    Dernier message: 26/05/2007, 01h06
  5. comment fermer un fichier Excel depuis Access?
    Par audrey_desgres dans le forum Access
    Réponses: 14
    Dernier message: 21/06/2005, 12h43

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