Note: The other languages of the website are Google-translated. Back to English

Comment fusionner ou consolider des feuilles de calcul ou des classeurs en une seule feuille de calcul?

Dans notre travail quotidien, nous pouvons rencontrer un problème qui fusionne des centaines de feuilles ou de classeurs en une seule feuille pour analyser les données, ce qui prend beaucoup de temps si vous utilisez la commande Copier et coller dans Excel. Ici, dans ce tutoriel, je vais fournir quelques conseils pour résoudre rapidement ce travail.

doc combiner 1

NAVIGATION RAPIDE

Fusion de toutes les feuilles du classeur actif en une seule feuille avec VBA
Fusion de dizaines de feuilles ou de classeurs en une seule feuille de calcul / classeur en quelques clics
Fusion de deux tables en une seule et mise à jour par colonne en quelques clics
Télécharger un exemple de fichier


Fusion de toutes les feuilles du classeur actif en une seule feuille avec VBA

Dans cette section, je fournis un code VBA qui créera une nouvelle feuille pour collecter toutes les feuilles du classeur actif pendant que vous l'exécutez.

1. Activez le classeur que vous souhaitez combiner toutes ses feuilles, puis appuyez sur + clés pour ouvrir Microsoft Visual Basic pour applications fenêtre.

2. Dans la fenêtre contextuelle, cliquez sur insérer > Module pour créer un nouveau script de module.

3. Copiez le code ci-dessous et collez-le dans le script.

Sub Combine()
'UpdatebyExtendoffice
Dim J As Integer
On Error Resume Next
Sheets(1).Select
Worksheets.Add
Sheets(1).Name = "Combined"
Sheets(2).Activate
Range("A1").EntireRow.Select
Selection.Copy Destination:=Sheets(1).Range("A1")
For J = 2 To Sheets.Count
Sheets(J).Activate
Range("A1").Select
Selection.CurrentRegion.Select
Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select
Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2)
Next
End Sub
doc combiner 2

4. presse F5 clé, alors toutes les données des feuilles ont été fusionnées dans une nouvelle feuille nommée Combinée qui est placée au début de toutes les feuilles.


pas bouger

Voulez-vous avoir une augmentation de salaire et beaucoup de temps pour accompagner votre famille?

Office Tab améliore votre efficacité de 50% dans Microsoft Office en cours de fonctionnement

Incroyable, travailler sur deux documents ou plus est plus facile et plus rapide que travailler sur un seul.

Comparé aux navigateurs bien connus, l'outil à onglets d'Office Tab est plus puissant et plus efficace.

Réduisez les centaines de clics de souris et de saisie au clavier chaque jour pour vous, dites au revoir à la main de la souris maintenant.

Si vous travaillez habituellement sur plusieurs documents, Office Tab vous fera gagner du temps.

Essai gratuit 30-day, Pas de carte de crédit nécessaire.

En savoir plusGratuit Télécharger maintenant


Fusion de dizaines de feuilles ou de classeurs en une seule feuille de calcul / classeur en quelques clics

Avec VBA, vous pouvez uniquement combiner des feuilles dans le classeur actif, mais comment fusionner des feuilles de classeurs dans une feuille ou un classeur?

Fusionner les feuilles de tous les classeurs en une seule feuille
doc combiner 18

Fusionner des feuilles de classeurs dans un seul classeur
doc combiner 3

Pour résoudre ce travail et satisfaire d'autres exigences sur la combinaison de Combiner La fonction a été développée avec quatre scénarios de combinaison:

  • Combinez plusieurs feuilles ou classeurs en une seule feuille
  • Combinez plusieurs feuilles ou classeurs dans un seul classeur
  • Combinez les feuilles de même nom en une seule feuille
  • Consolider les valeurs des feuilles ou des classeurs dans une seule feuille

Voici la deuxième option comme exemple:

Combinez plusieurs feuilles ou classeurs dans un seul classeur

Après installation gratuite Kutools for Excel, procédez comme suit:

1. Activez Excel, cliquez sur Kutools Plus > Combiner, une boîte de dialogue apparaît pour vous rappeler que les classeurs que vous souhaitez combiner doivent être fermés. Cliquez sur OK continuer.
doc combiner 4
doc combiner 5

2. dans le Combiner les feuilles de travail étape 1 boîte de dialogue, vérifier Combinez plusieurs feuilles de calcul de classeurs dans un seul classeur option. Cliquez sur Suivant pour passer à l'étape suivante de l'assistant.
doc combiner 6

3. Cliquez Ajouter > Déposez le or Dossier pour ajouter les classeurs que vous souhaitez combiner au Liste des classeurs volet, vous pouvez alors spécifier quelle feuille de calcul sera jointe en vérifiant les noms dans Liste des feuilles de travail vitre. Cliquez sur Suivant pour passer à la dernière étape de l'assistant.
doc combiner 7

4. Dans cette étape, spécifiez les paramètres dont vous avez besoin. Puis clique Récapitulatif.
doc combiner 8

5. Une fenêtre apparaît pour vous permettre de sélectionner un dossier pour placer le classeur combiné, puis cliquez sur Enregistrer.
doc combiner 9

Maintenant, les classeurs ont été fusionnés en un seul classeur. Et au début de toutes les feuilles, une feuille principale nommée Kutools for Excel est également créée, qui répertorie certaines informations sur les feuilles et les liens de chaque feuille.
doc combiner 10

Démo: combinez des feuilles / classeurs en une seule feuille ou un classeur

Kutools for Excel: 200 + outils pratiques utiles, simplifiant les tâches compliquées dans Excel en quelques clics.

Dites adieu à la main de souris et à la spondylose cervicale maintenant

300 outils avancés de Kutools for Excel résolvent 80% des tâches Excel en quelques secondes, vous sortent des milliers de clics de souris.

Gérez facilement 1500 scénarios de travail, pas besoin de perdre de temps à rechercher des solutions, ayez beaucoup de temps pour profiter de votre vie.

Améliorez la productivité de 80% pour plus de 110000 personnes très efficaces chaque jour, vous y compris bien sûr.

Ne plus être tourmenté par les formules douloureuses et le VBA, donnez à votre cerveau une humeur de travail reposante et joyeuse.

Essai gratuit de 30 jours avec toutes les fonctionnalités, remboursement de 30 jours sans raison.

Un corps meilleur crée une vie meilleure.


Fusion de deux tables en une seule et mise à jour par colonne en quelques clics

Si vous souhaitez fusionner deux tables en une seule et mettre à jour les données en fonction d'une colonne comme illustré ci-dessous, vous pouvez essayer le Fusionner les tables utilité de Kutools pour Excel.
doc combiner 11

Kutools for Excel: plus de 200 compléments Excel pratiques pour simplifier les tâches complexes en quelques clics dans Excel

Après installation gratuite Kutools for Excel, procédez comme suit:

1. Cliquez Kutools Plus > Fusionner les tables autoriser Fusionner les tables Assistant.
doc combiner 12

2. À l'étape 1 de l'assistant, vous devez sélectionner séparément la table principale et les plages de table de recherche. Puis clique Suivant.
doc combiner 13

3. Cochez la colonne clé sur laquelle vous souhaitez mettre à jour les données dans la table principale. Cliquez sur Suivant.
doc combiner 14

4. Vérifiez ensuite les colonnes de la table principale pour lesquelles vous souhaitez mettre à jour les données en fonction de la table de recherche. Cliquez sur Suivant.
doc combiner 15

5. À l'étape 4 de l'assistant, vérifiez les colonnes que vous souhaitez ajouter de la table de recherche à la table principale. Cliquez sur Suivant.
doc combiner 16

6. Dans la dernière étape de l'assistant, spécifiez les options de configuration dont vous avez besoin. Puis clique Récapitulatif.
doc combiner 17

Maintenant, la table principale a été mise à jour les données et ajouter de nouvelles données basées sur la table de recherche.

Démo: combinez des feuilles / classeurs en une seule feuille ou un classeur

Kutools for Excel: 200 + outils pratiques utiles, simplifiant les tâches compliquées dans Excel en quelques clics.


Télécharger un exemple de fichier

échantillon


Outils de productivité recommandés

Onglet Office - Navigation par onglets, modification, gestion des documents dans Microsoft Office 2019-2003 et Office 365


onglet bureau

Un complément professionnel pour accélérer Excel 2019-2007, réduire les heures de tâches à quelques secondes

Ce complément comprend des dizaines de groupes professionnels, avec plus de 300 options automatisera la plupart de vos tâches quotidiennes dans Excel et augmentera votre productivité d'au moins 50%. Tels que des groupes d'options en un clic et des conversions par lots.
C'est maintenant votre chance de vous accélérer avec Kutools for Excel!


Commentaires (168)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
utilisé votre première fonction Macro. WOW! Merci d'avoir posté
Ce commentaire a été minimisé par le modérateur sur le site
Je pense que le code 'Selection.Offset(0, 0).Resize(Selection.Rows.Count - 1).Select' ne doit pas être là. De mon côté, ce qu'il fait, c'est sélectionner la deuxième ligne en manquant la première.
Ce commentaire a été minimisé par le modérateur sur le site
J'ai le même problème. Il omet la première ligne de la deuxième feuille de calcul ajoutée.
Ce commentaire a été minimisé par le modérateur sur le site
Élimine les en-têtes afin que vous n'ayez pas d'en-têtes en double
Ce commentaire a été minimisé par le modérateur sur le site
Fonctionne comme un charme, merci pour le partage!
Ce commentaire a été minimisé par le modérateur sur le site
Merci! La macro a parfaitement fonctionné.
Ce commentaire a été minimisé par le modérateur sur le site
Je ne sais pas comment utiliser la fonction VBN dans Excel, pouvez-vous s'il vous plaît aider à le faire.
Ce commentaire a été minimisé par le modérateur sur le site
Super merci!!! Très Très Utile
Ce commentaire a été minimisé par le modérateur sur le site
La macro un fonctionne bien. Merci!! C'est Génial !!!! :)
Ce commentaire a été minimisé par le modérateur sur le site
Notez que cela est limité par la limite de 65 1 lignes, si vous devez remonter la ligne Selection.Copy Destination:=Sheets(65536).Range("A2").End(xlUp)(XNUMX) range pour résoudre le problème.
Ce commentaire a été minimisé par le modérateur sur le site
Excellent outil cependant, il ne combine pas les 21 feuilles. Comment puis-je étendre la gamme ?
Ce commentaire a été minimisé par le modérateur sur le site
REMARQUE!!! Vous devez être prudent avec la macro. Cela fonctionnera si vos données ont un flux continu d'informations et aucune ligne vide. c'est ce que fait la ligne "Selection.CurrentRegion.Select". Par exemple, si vous devez copier TOUTES les données d'une feuille de calcul mais qu'il y a une ligne vide à (disons) la ligne 200, la macro ne copiera que jusqu'à la ligne 200 ; IL IGNORERA TOUTES LES DONNÉES SOUS CETTE LIGNE !!!
Ce commentaire a été minimisé par le modérateur sur le site
Est-ce que quelqu'un connait une commande pour éviter ce problème ?? Le problème avec Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select peut être résolu ? Selection.Rows.Count - 1) est la commande à l'origine du problème. Personne??
Ce commentaire a été minimisé par le modérateur sur le site
Au lieu de partir du haut et de descendre, commencez par le bas et montez
Ce commentaire a été minimisé par le modérateur sur le site
Est-ce que quelqu'un connaît le code pour résoudre les problèmes de lignes et de colonnes vides ?. Je l'ai dans mes données mais il n'y a pas de solution simple comme démarrer de bas en haut ? Merci!
Ce commentaire a été minimisé par le modérateur sur le site
Pour supprimer des lignes vides : Option 1 : Sélectionnez les cellules de la colonne A qui doivent être supprimées. Utilisez Ctrl - puis sélectionnez Ligne entière dans la fenêtre contextuelle. Enregistrez le classeur et quittez. Ouvrez ensuite le classeur. Option 2 : Sélectionnez les lignes qui doivent être supprimées. Utilisez Ctrl-. Enregistrez le classeur et quittez le classeur ouvert. A donné l'option 1 pour que vous puissiez voir ce qui se passait. Pour supprimer des colonnes vides : sélectionnez la colonne. Ctrl-. Enregistrez le classeur et quittez le classeur ouvert.
Ce commentaire a été minimisé par le modérateur sur le site
Avons-nous une solution pour copier les données sous la cellule vide ?
Ce commentaire a été minimisé par le modérateur sur le site
Merci ! Ma 2e rangée était vide dans toutes les feuilles et j'étais confus.
Ce commentaire a été minimisé par le modérateur sur le site
le code vba a très bien fonctionné, mais j'ai besoin que la feuille de calcul combinée soit mise à jour lorsque j'ajoute de nouvelles lignes ou de nouvelles données aux cellules des feuilles de calcul que je combine. Y-a-t-il un moyen de faire ça? Merci de votre aide.
Ce commentaire a été minimisé par le modérateur sur le site
Le code de macro a très bien fonctionné pour la première feuille de calcul combinée, mais j'ai besoin que la feuille de calcul combinée soit mise à jour lorsque j'ajoute des données aux feuilles de calcul existantes que je combine. Y-a-t-il un moyen de faire ça?
Ce commentaire a été minimisé par le modérateur sur le site
Avez-vous déjà compris comment le mettre à jour dans le maître lorsque vous ajoutez des lignes aux autres feuilles de calcul ?
Ce commentaire a été minimisé par le modérateur sur le site
Excellent travail. Cela a réduit mon travail de 2 heures à 10 minutes.
Ce commentaire a été minimisé par le modérateur sur le site
Excellent, j'ai utilisé à la fois la première macro et Kutools, les deux ont considérablement réduit mon travail de collecte et de compilation de données. Merci d'avoir partagé.
Ce commentaire a été minimisé par le modérateur sur le site
Je viens d'effacer la partie donnée ci-dessous et maintenant elle ne fait que se mettre à jour. J'espère que cela vous aidera... Sheets(1).Select Worksheets.Add
Ce commentaire a été minimisé par le modérateur sur le site
Le code fonctionne très bien ! J'ai besoin de la macro pour copier toutes les données sur les feuilles. Il coupe la première ligne après la feuille 1. Seule la feuille un a la ligne d'en-tête, les autres feuilles ne sont que des données. Est-ce possible?
Ce commentaire a été minimisé par le modérateur sur le site
J'ai une question sur "Fusionner toutes les feuilles de calcul en une seule feuille de calcul avec le code VBA" : Le code fonctionne très bien, mais seulement lorsqu'il est vide, il ajoute l'en-tête, il est possible de modifier le code pour dire de ne pas consolider la feuille vide ?
Ce commentaire a été minimisé par le modérateur sur le site
Merci tu m'as fait gagner une heure de copier-coller :D
Ce commentaire a été minimisé par le modérateur sur le site
Avoir deux classeurs, les mêmes données mais le second contient des données supplémentaires et certaines données ont été mises à jour, inv # Status 123 7/2 ouvert inv # status 123 7/2 ouvert 7/7 fermé comment fusionner en un seul supprimer ou mettre en surbrillance les doublons et ajouter tout nouvel inv# pas dans le premier
Ce commentaire a été minimisé par le modérateur sur le site
Fonctionne très bien si votre colonne A n'est pas = vide. Sur les feuilles dont la colonne A est vide, il semble s'écraser. Dans ma colonne dtaa E est un non vide sur toutes les feuilles. Comment puis-je modifier la destination de copie pour tenir compte de la colonne vide A sur certaines feuilles ?
Ce commentaire a été minimisé par le modérateur sur le site
Sub CopySheet() ' ' CopySheet Macro ' ' Dim i As Integer For i = 2 To 25 Sheets("Sheet1").Select Range("A1").Select Selection.End(xlDown).Select Range("A" & CStr(Selection.Row) + 1).Select Sheets("Sheet" & CStr(i)).Select Range("A2").Select Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection .End(xlToRight)).Select Selection.Cut Sheets("Sheet1").Select ActiveSheet.Paste Next End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Range("A:A").SpecialCells(xlCellTypeLastCell).Select ActiveCell.Offset(1, 0).Select 'utiliser ce code pour sélectionner la dernière cellule de la colonne "A" [quote] Sub CopySheet() ' ' CopySheet Macro ' ' Dim i As Integer For i = 2 To 25 Sheets("Sheet1").Select Range("A1").Select Selection.End(xlDown).Select Range("A" & CStr(Selection.Row) + 1) .Sélectionnez Feuilles("Feuille" & CStr(i)).Sélectionnez Plage("A2").Sélectionnez Plage(Sélection, Sélection.End(xlDown)).Sélectionnez Plage(Sélection, Sélection.End(xlToRight)).Sélectionnez Sélection .Cut Sheets("Sheet1").Select ActiveSheet.Paste Next End SubPar clopez[/ Quote]
Ce commentaire a été minimisé par le modérateur sur le site
MACRO CODE FONCTIONNE SI BIEN... FABULEUX :-)
Il n'y a pas encore de commentaires postés ici
TÉLÉCHARGER PLUS
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0   Personnages
Emplacements suggérés