Comment tranferer données d'une table excel vers une autre sans copier coller

bonjour
je souhaite transférer automatiquement entre 2 classeurs excel des données avec la ,mise en forme sans faire de copier coller ni de liaisons. comment puis-je faire
merci

5 réponses

  1. Contributeur
    Bonjour,

    un exemple en vba.

    Dézipper et ouvrez le classeur: Base de données - Directe

    Toutes les explications pour le fonctionnement sont dedans:

    https://www.cjoint.com/c/JEwoHtDrK5Q

    Voilà
    0
    1. bonjour
      pour moi cela ne fonctionne pas
      voici un fichier exemple.
      https://www.cjoint.com/c/JEzmIUaLOQr

      merci
      0
      1. Contributeur
        pour moi cela ne fonctionne pas

        évidemment c'est un exemple à mettre en pratique que j'ai posté.

        Dans le fichier que tu as posté il n'y a aucun code cela ne peux fonctionner!

        Suis les indications, si tu as un problème revient on essaiera de le résoudre

        @+ Le Pivert
        0
    2. je viens de ressayer et cela fonctionne il faut que les deux fichiers soient ouverts. par contre c'est chiant de double cliquer a chaque fois est ce que c'est possible de simplifier?
      0
      1. Contributeur
        Voici une nouvelle version avec un bouton.
        A remplacer l'ancienne par la nouvelle dans le dossier

        https://www.cjoint.com/c/JEzpfkHhC8Q

        @+ Le Pivert
        0
      2. @cs_Le Pivertbonjour
        ok c'est nickel
        par contre qu'est ce qu'il faut changer pour augmenter la plage de cellule ou changer de feuille de destination?
        merci
        0
      3. Contributeur
        @lunart0408Je me suis amusé à le faire sur ton classeur.
        tout d'abord j'ai fait une copie que je nomme Destination ( a adapter)

        dans le module1:

        Option Explicit
        Public classeurDestination As Workbook
        Dim derlig As Long
        'enregistrer
         Sub enregistrer()
        Application.ScreenUpdating = False
        derlig = ThisWorkbook.Sheets("feuille 1").Range("B" & Rows.Count).End(xlUp).Row 'adapter nom feuille et plage de cellule
            With Workbooks("Destination.xlsx").Sheets("feuille 1") 'adapter le nom du classeur et de la feuille
                .Range("B7:R" & derlig).ClearContents
                .Range("B7:R" & derlig).Value = ThisWorkbook.Sheets("feuille 1").Range("B7:R" & derlig).Value 'adapter nom feuille et plage de cellule
            End With
         Application.ScreenUpdating = True
        End Sub
        
        


        dans ThisWorkbook

        Option Explicit
        Private Sub Workbook_Open()
        'ouvrir le classeur destination
        Set classeurDestination = Application.Workbooks.Open(ThisWorkbook.Path & "\Destination.xlsx")'a adapter le nom du classeur
         ThisWorkbook.Sheets("feuille 1").Activate
        End Sub
        


        dans la feuille 1

        Option Explicit
        Private Sub CommandButton1_Click()
        enregistrer
        End Sub
        


        Voilà tu sais tout!

        @+ Le Pivert
        0
      4. Contributeur
        @lunart0408C'est un classeur xlsx, cela ne prend pas en charge les macros. Tu dois avoir un message qui te l'indique lors de la fermeture!

        Après avoir mis toutes les macros indiquées, Il faut donc enregistrer sous: classeur Excel prenant en charge les macros

        Voilà c'est tout simple

        @+ Le Pivert
        0
    3. Si je peux me permettre...il y a infiniment plus simple : enregistrer le fichier Excel (incluant tous les tableaux) tout sous un nouveau nom. De cette manière un second fichier est créé et vous en faites ce que vous voulez y compris le transférer ailleurs !
      0
      1. Non maispriston fichier et suivi les instruction et cela me met debodage.
        -1