web-dev-qa-db-fra.com

Comment fusionner des données de plusieurs fichiers Excel dans un seul fichier Excel ou une base de données Access?

J'ai quelques dizaines de fichiers Excel qui sont tous du même format (soit 4 feuilles de calcul par fichier Excel). Je dois combiner tous les fichiers en un seul fichier maître, qui ne doit contenir que 2 des 4 feuilles de calcul. Les feuilles de calcul correspondantes de chaque fichier Excel portent exactement le même nom que les en-têtes de colonne.

Bien que chaque fichier soit structuré de la même manière, les informations des feuilles 1 et 2 (par exemple) sont différentes. Donc, il ne peut pas être combiné dans un seul fichier avec tout dans une seule feuille!

Je n'ai jamais utilisé VBA auparavant et je me demande par où commencer cette tâche!

11
lalabeans

Puisque vous les vouliez sur une feuille, je pense que ce qui précède n’est pas ce que vous cherchiez.

J'utilise Microsoft Access pour fusionner des données. En particulier, si différentes feuilles ont un identifiant similaire (numéro de pièce/personne à contacter/ect).

Vous créez une "table" pour chaque feuille de calcul à fusionner. Vous créez une "requête" qui extrait les colonnes souhaitées sur une feuille.

3
Agent-311

Veuillez consulter le Consolider les feuilles de travail Wizard complément pour Excel

Le complément dispose de plusieurs modes de fusion, l’un d’eux répondant exactement à vos besoins.

S'il vous plaît voir ce lien pour une description détaillée du mode (comment combiner des feuilles avec le même nom à un)

Le complément est un shareware, mais il comporte une version d'essai entièrement fonctionnelle de 15 jours (bouton de téléchargement en haut de la page). Vous pouvez ainsi fusionner des milliers de vos classeurs gratuitement :)

7
Alex Frolov

Ici est une solution en python.

import glob
import pandas as pd

path = "<path to files>"
file_identifier = "*.xlsx"

all_data = pd.DataFrame()
for f in glob.glob(path + "/*" + file_identifier):
    df = pd.read_Excel(f)
    all_data = all_data.append(df,ignore_index=True)
4
abalter

Aujourd'hui, je suis tombé sur ce lien RDBMerge, le complément de fusion Excel pour Excel pour Windows , qui, je pense, servira à cette fin. C'est un outil libre basé sur une macro.

4
lalthomas
  1. Ouvrez tous les classeurs Excel dans la même instance d'Excel.
    • Vous devrez peut-être cliquer sur le bouton "restaurer" interne pour afficher les classeurs individuels.
  2. Sélectionnez toutes les feuilles que vous souhaitez déplacer. Ctrl+ En cliquant sur les onglets de la feuille de calcul.
  3. Faites un clic droit sur l’un des onglets sélectionnés et choisissez Déplacer ou Copier ...
  4. Dans la boîte de dialogue qui s’ouvre, sélectionnez le classeur de destination (votre classeur "principal"), puis choisissez l’endroit où vous souhaitez les insérer.
    • L'option (move to end) est probablement ce que vous voulez, mais vous pouvez toujours les réorganiser plus tard.
    • Choisissez Créer une copie si vous ne souhaitez pas que les feuilles soient supprimées du premier classeur.
  5. Cliquez OK.

Les feuilles de calcul sélectionnées seront déplacées ou copiées du classeur d'origine dans votre classeur "principal". Fermez simplement le wookbook source et recommencez avec le suivant, jusqu'à ce que vous ayez rassemblé toutes les feuilles de calcul qui vous intéressent dans un seul grand wookbook. Assurez-vous d'économiser!

0
Darth Android