Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

automatische Auswertung mehrerer Tabellenblätter





Frage

Hallo, ich habe einen Ordner mit Excel-Dateien. Jede Exceldatei wertet einen Datensatz aus und schreibt die Daten in ein extra Tabellenblatt. Ich möchte die Auswertung der verschiedenen Tabellen gerne miteinander vergleichen. 1. Ist es möglich die Daten automatisiert mit einer neuen Tabelle zu verknüpfen? 2. Es kommen immer neue Tabellen hinzu. Ist es möglich, dass jede neue Tabelle ebenfalls automatisch mit der Auswertungstabelle verknüpft wird? Ich hoffe, ich habe mein Problem einigermaßen plausibel dargestellt. viele Grüße Richard

Antwort 1 von Saarbauer

hallo,

diese automatische Verknüpfung ist wahrscheinlich nicht machbar, kommt etwas drauf an was du genau machen willst.
Es ist jedoch möglich mit einem Marko die entsprechenden Zeilen zu erstellen.

Es wäre dazu gut den Datenaufbau und deine Verknüpfungen zu kennen

Gruß

Helmut

Antwort 2 von rheym

Hallo Helmut,

es handelt sich um Patientendaten. Jeder Patient hat eine Excel-Datei, die bei jedem Besuch aktualisiert wird. Die Gesamtzahl der Patienten wird immer größer, da immer neue Patienten hinzukommen.
Jetzt möchte ich nicht nur eine Auswertung pro Patient, sondern auch eine statistische Auswertung aller Patienten.
Um mir die Sache zu vereinfachen, habe ich in jeder Datei die für mich wichtigen Daten mit einem neuen Tabellenblatt verknüpft und zwar so, dass alle Daten in einer Zeile hintereinander stehen. Diese Ordnung ist immer gleich.
Jetzt hätte ich gerne eine Tabelle in der alle Daten zusammenlaufen.
Natürlich könnte ich für jeden neuen Patienten die Daten per Hand verknüpfen, aber eleganter wäre es narürlich, wenn es ein Makro gäbe, dass die Datenzeile automatisch mit der Auswertungstabelle verknüpft.
Die Frage ist jetzt, ob das überhaupt geht und ob man mit VBA die Daten einer neuen Datei immer in die nächste freie Zeile der Gesamtauswertungstabelle schreiben kann.

Ich hoffe, ich habs jetzt verständlich dargestellt

viele Grüße

Richard

Antwort 3 von Saarbauer

Hallo,

das ist ziemlich sicher mit einem Makro zu machen, es wäre natürlich gut dem Aufbau der Tabellen zu kennen und der Zusammenstellung.

Vielleicht kannst du eine Dummydatei zur Verfügung stellen

Gruß

Helmut

Antwort 4 von rheym

Hallo Helmut,

wie geht das denn nochmal mit dem Upload?
Dann stell ich Dir die Datei mal rein...

vielen Dank und viele Grüße

Richard

Antwort 5 von Saarbauer

hallo,

eine Möglichkeit

http://upload.npcfighter.de/

Gruß

Helmut

Antwort 6 von rheym

Hallo Helmut,

http://upload.npcfighter.de/files/36/7161/Befundblatt%2029.04.08.xls

interessant ist nur der letzte Reiter "Statistik"

viele Grüße

Richard

Antwort 7 von Saarbauer

Hallo,

so wie ich es verstehe werden Die Daten aus den Blättern davor in die Statistik übernommen, bloss mir ist ohne nähere Erläuterung nicht klar wie die Zusammenhänmge sind .

Es sind dazu noch ein paar Erläuterungen erforderlich.

Gruß

Helmut

Antwort 8 von rheym

hallo Helmut,

die Zusammenhänge sind ziemlich kompliziert aber eigentlich für die Fragestellung nicht wichtig, wichtig ist nur, dass die Daten aus dem Reiter Statistik automatisch mit einer eigenständigen Tabelle verknüpft werden.

viele Grüße

Richard

Antwort 9 von Saarbauer

Hallo,

ok. das ist grundsätzlich möglich, jedoch müste man dazu die Namen der, ich nenne sie mal Sammendatei wissen und die Dateinamen der Einzeldateien. Willst du alle Daten aus dem Blatt Statistik übernehmen, nur bestimmte oder vielleicht nur Summen

Gruß

Helmut

Antwort 10 von rheym

Hallo Helmut,

Die Sammeldatei heisst "Auswertung Parodontaltherapie", die einzelnen Dateien heissen jeweils "Name,Vorname,Geburtsdatum". Ich könnte mir vorstellen, dass es ein Problem sein könnte, dass das Makro auch die neu hinzukommenden Dateien erfasst und deren Daten automatisch in die nächste freie Zeile der Datei "Auswertung Initialtherapie" schreibt.
Ich möchte alle Daten aus dem Blatt "Statistik" übernehmen.

vielen Dank & viele Grüße

Richard

Antwort 11 von Saarbauer

Hallo,

war ein paar Tage weg, daher Funkstille.

Um die Dateinemen zu ermitteln könntest du es mit der aw 2 aus dem Thread es versuchen

https://supportnet.de/threads/1656884

Gruß

Helmut

Antwort 12 von rheym

Hallo Helmut,

war auch ein paar Tage weg,
soweit ich den link verstanden habe, könnte man mit dem Makro die Dateien neu erstellen, was die Anwendung deutlich erleichtert,vielen Dank, das baue ich ein. Jetzt brauche ich noch eine Möglichkeit, dass das Tabellenblatt Statistik von jeder neuen Datei automatisch mit der Datei "Auswertung" verknüpft wird und jede Änderung in den Tabellenblättern auch in der Datei "Auswertung" gespeichert wird. Jetzt eröffnet sich natürlich die Frage, ob das Ganze in Excel noch sinnvoll ist oder man eine Datenbanklösung braucht.

viele Grüße

Richard

Antwort 13 von Saarbauer

hallo,

das Problem ist, wenn die Übernahme bereits bei teilgefüllten Datenblättern erfolgt (wobei ich annehme, dass diese wahrscheinlich meist nicht ganz gefüllt werden), müsste jedesmal überprüft werden wo sich Daten geändert haben und das wird vor allem Zeitaufwendig.

Wieviel Dateien sind es den ? Ich vermute eine ganze Menge.
Brauchst du wirklich aus allen Blättern die Einzelwerte?

Gruß

Helmut

Antwort 14 von nighty

hi all :-)

wenn die 4 zeile generell gemeint ist zum sammeln,wuerde ich
einen button vorschlagen der das makro startet

ein vergleich der daten ist zu aufwendig und nicht noetig glaub ich,da ist es einfacher und vor allem schneller ,immer die 4 zeile zu kopieren

waere das was ?

gruss nighty

DeineZielTabelle
waere der name in makro anzupassen

"C:\Temp\"
der pfad waere anzupassen
in dem angegeben pfad sollten die exeldateien liegen

namen spielen da keine rolle,aus diesem grunde sollten sich in dem angegebenen verzeichnis nur die auszulesenden dateien befinden und oder die zieldatei

es wird aus einem angegebenen verzeichnis eine unbestimmte anzahl von dateien geoeffnet ,die 4 zeile gelesen und in der zieldatei untereinander wieder dargestellt

Sub FilesListen()
Call EventsOff
Dim Dateien As Integer
Dim DateiName As String
ThisWorkbook.Sheets("DeineZielTabelle").Range("A2:IV" & Rows.Count).Clear
With Application.FileSearch
.NewSearch
.LookIn = "C:\Temp\"
.Filename = "*.xls"
If .Execute() > 0 Then
For Dateien = 1 To .FoundFiles.Count
DateiName = Dir(.FoundFiles(Dateien))
If DateiName <> ThisWorkbook.Name Then
Workbooks.Open Filename:=.FoundFiles(Dateien)
Workbooks(DateiName).Sheets("Statistik").Range(Workbooks(DateiName).Sheets("Statistik").Cells(4, 1), Workbooks(DateiName).Sheets("Statistik").Cells(4, Workbooks(DateiName).Sheets("Statistik").Range("4:4").End(xlToRight).Column)).Copy ThisWorkbook.Sheets("DeineZielTabelle").Range("A" & ThisWorkbook.Sheets("DeineZielTabelle").UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1)
Workbooks(DateiName).Close SaveChanges:=True
End If
Next Dateien
End If
End With
Call EventsOn
End Sub

Public Sub EventsOff()
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
End Sub

Public Sub EventsOn()
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
End Sub


Antwort 15 von nighty

hi all :-))

bin ja mal auf die laufzeit gespannt (hoffe fuer dich unter 10 000 dateien) hihi

sehr viel schneller gehts nimmer denk ich :-))

gruss nighty

Antwort 16 von rheym

Hallo Helmut,


ok, das seh ich ein. Wäre natürlich schön gewesen, wenn man immer nachsehen hätte können, wie der aktuelle Stand der Dinge ist, aber das ist eigentlich ein wenig überambitioniert.
Die Datenblätter füllen sich im Laufe von ca 2 Jahren und es kommen jedes Jahr bis zu 60 neue Dateien hinzu. Das wird natürlich etwas zu viel.
Es ist sicher sinnvoller, eine Datei komplett auszufüllen und wenn alles fertig ist, den Datensatz einmal in die Auswertungsdatei zu kopieren. Das mit der Menge der Daten ist so, im Moment weiss ich noch nicht, welche Daten die aussagekräftigsten sind, deshalb habe ich vorerst noch lieber zu viele Daten und lasse dann etwas weg.

viele Grüße

Richard

Antwort 17 von Saarbauer

Hallo,

versuch es mal mit dem Makro von @ nighty müsste in annehmbarer Zeit laufen, bei ca. 60 Dateien im Jahr.

Vielleicht könnte man abgeschlossene Datenpakete von einer erneuten Übertragung ausschliessen, würde die Zeiten schon verkürzen

Gruß

Helmut

Antwort 18 von rheym

Hallo,

das hört sich sehr sehr sehr vielversprechend an!
Jetzt musst Du mir nur noch ein paar Sachen erklären:
Ich muss das Makro in der Auswertungstabelle laufen lassen?
Button wäre natürlich sehr toll, d.h. am Abend geh ich in die Auswertungsdatei, drücke aufs Knöpfchen und die Daten des Tages kommen zu mir. Bedeutet das, dass ich vorher die Tabelle leeren sollte, weil das Makro immer alle Daten einschreibt?
habs schon mal probiert aber kein Button erschien.
Dieses Makro sieht sehr nach der Lösung meiner Probleme aus, jetzt müsst Ihr mir nur noch ein bisschen bei der Ausführung helfen...
vielen Dank für die Hilfe!

viele Grüße

Richard

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: