Mappen zusammenfassen

06/09/2007 - 08:22 von mromica | Report spam
Hallo NG,

Excel 2000 SP3

ich hàtte mal ein (für mich) sehr kompliziertes Problem.

Es gibt 20 Excel Mappen mit jeweils 1 Tabelle (Inventurzàhllisten -
für 20 Zàhlteams), der Aufbau der Tabellen ist immer gleich (Anzahl,
Name und Anordnung der Spalten) - ich möchte gerne mit einem Makro die
20 Mappen zu einer Mappe zusammenführen, wobei die Datensàtze die die
Spalten: A - ArtNr und B-Werk und C-Lagerort und D-ProdSt identisch
haben, sollen summiert werden. Also (zB. A34; B=Regensburg;
C=Rwest; D=BY01;[ E00 ist die Summe der Datensàtze aus den 20
Tabellen]) soll in die zusammengefügte Tabelle nur einmal vorkommen.

Der Datensatz (zB. A34; B=Regensburg; C=Rwest; D=Bayern; E3
(unterschiedlich) kann in einer oder mehreren Tabelle(n) (von den 20)
auch mehrmals vorkommen.

Excel 2000 SP3


Bin für jede Hilfe dankbar.


Romica Manea
 

Lesen sie die antworten

#1 Thomas Ramel
07/09/2007 - 07:35 | Warnen spam
Grüezi Romica

schrieb am 06.09.2007

Excel 2000 SP3

Es gibt 20 Excel Mappen mit jeweils 1 Tabelle (Inventurzàhllisten -
für 20 Zàhlteams), der Aufbau der Tabellen ist immer gleich (Anzahl,
Name und Anordnung der Spalten)



Dieser identische Aufbau ist schon mal sehr gut für eine Auswertung wie Du
sie machen willst.

- ich möchte gerne mit einem Makro die
20 Mappen zu einer Mappe zusammenführen, wobei die Datensàtze die die
Spalten: A - ArtNr und B-Werk und C-Lagerort und D-ProdSt identisch
haben, sollen summiert werden. Also (zB. A34; B=Regensburg;
C=Rwest; D=BY01;[ E00 ist die Summe der Datensàtze aus den 20
Tabellen]) soll in die zusammengefügte Tabelle nur einmal vorkommen.

Der Datensatz (zB. A34; B=Regensburg; C=Rwest; D=Bayern; E3
(unterschiedlich) kann in einer oder mehreren Tabelle(n) (von den 20)
auch mehrmals vorkommen.



Du könntest per Makro die Daten der einzelnen Mappen in eine neue Mappe
untereinander schreiben lassen und hàttest dann eine gemeinsame
Datenquelle.

Da Du aber gleichartige Datensàtze gleich zusammenfassen willst, würde ich
eine Pivot-Tabelle verwenden. Diese kann auch sehr gut mit externen Daten
arbeiten. Für die Zusammenfassung aus mehreren Mappen ist dazu etwas
Vorarbeit notwendig, die sich aber im Nachhinein bestimmt lohnen wird.

Ich gehe davon aus, dass sich alle Mappen im gleichen Ordner befinden, Bei
mir heissen die Dateien 'Mappe1', 'Mappe2' und 'Mappe3'. Die
Tabellenblàtter heissen jeweils 'Tabelle1'. Diese Namen wirst Du spàter
wieder finden und zwar mit deinen Begriffen. Verwende dann anstelle der
meinen einfach die deinen, dann klappt das mit deinen Daten.


Öffne nun eine neue Mappe, starte den Pivot-Assistenten und gehe dann wie
folgt vor:

Name des Tabellenblattes anwàhlen und [>] drücken
(hier könntest Du auch nur einzelne Spalten importieren)

Hier findest Du den SQL-Ausdruck, den MS-Query generiert hat um die Daten
aus der Mappe zu holen. Diesen Ausdruck veràndern und erweitern wir nun.
Nimm diese Anpassungen gleich direkt im SQL-Fenster vor, dann gibt es keine
Probleme mit den Zeilenumbrüchen.
Bei mir ergibt sich da sowas hier:

SELECT `Tabelle1$`.ArtNr, `Tabelle1$`.Werk, `Tabelle1$`.Lagerort,
`Tabelle1$`.ProdSt, `Tabelle1$`.Anzahl
FROM `D:\Excel-Programmierungen\PT_mehrere Mappen\Mappe1`.`Tabelle1$`
`Tabelle1$`

Alle Spalten die Du importiert hast, den Name des Tabellenblattes, den der
Mappe und den Pfad findest Du hier wieder.
Da Du mehrere Mappen zusammenfassen willst und jeweils alle Daten haben
möchtest schreibst Du den Ausdruck um:

SELECT *
FROM `D:\Excel-Programmierungen\PT_mehrere Mappen\Mappe1`.`Tabelle1$`
`Tabelle1$`

Kopiere diesen Teil um ihn spàter wieder einfügen zu können.
Erweitere die Zeilen mit der folgenden:

SELECT *
FROM `D:\Excel-Programmierungen\PT_mehrere Mappen\Mappe1`.`Tabelle1$`
`Tabelle1$`
union all

Füge nun die kopierten Daten darunter weider ein und passe den Namen der
Mappe an, sodass sich das Ganze dann auf die nàchste Mappe bezieht:
Verfahre so bis Du alle deine Mappen in diesem Ausdruck integriert hast.
Bei mir schaut das dann so aus:

SELECT *
FROM `D:\Excel-Programmierungen\PT_mehrere Mappen\Mappe1`.`Tabelle1$`
`Tabelle1$`
union all
SELECT *
FROM `D:\Excel-Programmierungen\PT_mehrere Mappen\Mappe2`.`Tabelle1$`
`Tabelle1$`
union all
SELECT *
FROM `D:\Excel-Programmierungen\PT_mehrere Mappen\Mappe3`.`Tabelle1$`
`Tabelle1$`

Nun gehts weiter in den Menüs, drücke also:

(nun müsstest Du bereits die zusammengefassten Daten sehen können)
(nun bist Du wieder im Pivot-Assistenten)

Es wird dir das Pivot-Raster und die Feldliste angezeigt, Du bist schon
fast fertig.

Ziehe nun die ersten vier Felder aus der Felsliste in den Zeilenbereich des
Rasters und das Feld 'Anzahl' in den Datenbereich.


Das ist dann die komplette Auswertung deiner Daten - der Rest ist Kosmetik
an der Pivot-Tabelle.




Mit freundlichen Grüssen
Thomas Ramel

- MVP für Microsoft-Excel -
[Win XP Pro SP-2 / xl2003 SP-2]
Microsoft Excel - Die ExpertenTipps

Ähnliche fragen