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 :

VBnet - vb Copier le contenu d'un fichier vers un autre fichier Excel


Sujet :

VB.NET

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2007
    Messages : 9
    Points : 6
    Points
    6
    Par défaut VBnet - vb Copier le contenu d'un fichier vers un autre fichier Excel
    hello c'est encore kestchup avec toutes ses questions

    Enfaite j'ai trois document excel. et j'aimerais coller dans le premier document les colonnes des deux autres documents.

    est-ce que quelqu'un aurait une idée de comment faire ceci?
    (j'ai vu des codes pour copier des cellulles dans la même feuille ou une feuille différente mais jamais deux document différents)

  2. #2
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 179
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 179
    Points : 1 776
    Points
    1 776
    Par défaut
    Bonjour.

    En passant par le my.Computer.Clipboard pour copier/coller ça devrait le faire mais je pense que ça implique que les doc soient ouverts.

    Cdt.
    Bon à savoir : la touche F1 ne sert pas à commander des places pour le grand prix de Belgique.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2007
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    heuuu pourrait tu me montrer un exemple de code car je n'ai jamais utilisé cette commande

  4. #4
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par ketchups Voir le message
    heuuu pourrait tu me montrer un exemple de code car je n'ai jamais utilisé cette commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my.Computer.Clipboard(arguments)
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  5. #5
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 179
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 179
    Points : 1 776
    Points
    1 776
    Par défaut
    Bonjour.

    Y'a plus l'aide disponible sur VS maintenant ?

    Un coup de F1 sur my.Computer.Clipboard et tu trouveras ce que tu cherches ...

    Cdt.
    Bon à savoir : la touche F1 ne sert pas à commander des places pour le grand prix de Belgique.

  6. #6
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    Dans l'exemple suivant, on va copier le contenu des colonnes de toutes les feuilles de deux classeurs existants dans un nouveau classeur qu'on sauvegardera sous le nom ClasseurResult.

    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
    Imports Microsoft.Office.Interop
    Public Class Form1
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim xlApp As New Excel.Application
            Dim ClasseurSource, ClasseurCible As Excel.Workbook
            ClasseurCible = xlApp.Workbooks.Add
            Dim PlageCible As Excel.Range = CType(CType(ClasseurCible.Worksheets(1), Excel.Worksheet).Columns(1), Excel.Range)
            Dim MyPath As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments
            For compteur As Int32 = 1 To 2
                ClasseurSource = xlApp.Workbooks.Open(MyPath + "\classeur" + compteur.ToString + ".xls")
                For Each Wsh As Excel.Worksheet In ClasseurSource.Worksheets
                    If Wsh.UsedRange.Cells.Count > 1 Then
                        For Each Macol As Excel.Range In Wsh.UsedRange.Columns
                            PlageCible.Value = Macol.Value
                            PlageCible = PlageCible.Offset(, 1)
                        Next
                    End If
                Next
                ClasseurSource.Close(False)
                ClasseurSource = Nothing
            Next
            PlageCible = Nothing
            CType(CType(ClasseurCible.Worksheets(1), Excel.Worksheet).Cells, Excel.Range).SpecialCells(Excel.XlCellType.xlCellTypeConstants, 16).Clear()
            ClasseurCible.SaveAs(MyPath + "\ClasseurResult.xls")
            ClasseurCible.Close()
            ClasseurCible = Nothing
            xlApp.Quit()
            xlApp = Nothing
        End Sub
     
    End Class
    quelques remarques.
    • Il faut ajouter la référence à Excel
    • Il faut gérer les erreurs pour faire une sortie propre si sa plante sinon le process Excel reste en cours
    • Il faut gérer éventuellement le cas du dépassement des 256 colonnes
    • La copie est une copie de valeurs, les formules ne sont pas copiées

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2007
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Merci beaucoup Bidou pour ta réponse
    j'essaye ça dès demain car je ne suis pas au travail
    je te tiens au courant

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2007
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    alors j'ai essayé ton code
    mais vb net ne reconnait pas My.Computer.FileSystem.SpecialDirectories.MyDocuments

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    enfaite j'ai mes deux fichier
    Dim Fich1 As Object
    Dim Fich2 As Object
     
    Fich1 = CreateObject("excel.application")
            Fich1.workbooks.open(filename:=LbDest.Text & "temp1" & ".xls", editable:=True)
     
     
    Fich2 = CreateObject("excel.application")
            Fich2.workbooks.open(filename:=LbDest.Text & "temp2" & ".xls", editable:=True)
    pis enfaite je veux copier le contenu des donnée de Fich2 dans Fich1

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/12/2008, 10h12
  2. [MySQL] Copier le contenu d une base vers une autre
    Par joboy84 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/07/2008, 11h28
  3. Copier le contenu d'un fichier vers un autre fichier Excel
    Par mathias dans le forum VBA Access
    Réponses: 4
    Dernier message: 13/06/2007, 14h47
  4. [VBA-E]Copier le contenu d'une cellule vers une autre
    Par idir.17 dans le forum Macros et VBA Excel
    Réponses: 24
    Dernier message: 26/03/2007, 16h50
  5. Réponses: 12
    Dernier message: 22/02/2006, 15h28

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