Auswertung.. Aber wie am besten?
Also, ich denke mal, dass es für euch nicht so das Problem ist, aber ich habe derzeit irgendwie ein Brett vor'm Kopf und komme einfach nicht weiter..
Folgendes..
Ich habe ein Tabellenblatt, bei dem ich einfach fortlaufend Daten eintrage. Ca 12 Spalten, bei denen anfänglich auch das Datum und eine Uhrzeit steht. Nun möchte ich in einem 2ten Tabellenblatt einfach ein Datum eintragen und Excel soll mir dann automatisch alle Einträge aus Tabellenblatt 1 auflisten, die an diesem Datum gemacht wurden. Und wenn ich dann ein anderes Datum eingebe, dann verschwinden diese Einträge wieder und Excel listet mir zu dem neuen Datum die Einträge der 12 Spalten auf...#
Hat jemand eine Idee?
Folgendes..
Ich habe ein Tabellenblatt, bei dem ich einfach fortlaufend Daten eintrage. Ca 12 Spalten, bei denen anfänglich auch das Datum und eine Uhrzeit steht. Nun möchte ich in einem 2ten Tabellenblatt einfach ein Datum eintragen und Excel soll mir dann automatisch alle Einträge aus Tabellenblatt 1 auflisten, die an diesem Datum gemacht wurden. Und wenn ich dann ein anderes Datum eingebe, dann verschwinden diese Einträge wieder und Excel listet mir zu dem neuen Datum die Einträge der 12 Spalten auf...#
Hat jemand eine Idee?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 61995
Url: https://administrator.de/contentid/61995
Ausgedruckt am: 22.11.2024 um 15:11 Uhr
10 Kommentare
Neuester Kommentar
Zu lösen wäre es auf jeden Fall mit SVERWEIS!
Suchkriterium: Das feld in dem du die Matrix eingibst
Matrix: in dem Fall das gesamte Datenblatt1
Spaltenindex: Die Spaltennummer
Bei 12 Spalten benötigst du halt 12 SVERWEISE, was aber vom Aufwand her nicht so arg ist.
Das funktioniert auf jeden Fall.
Mfg
Gamer
Suchkriterium: Das feld in dem du die Matrix eingibst
Matrix: in dem Fall das gesamte Datenblatt1
Spaltenindex: Die Spaltennummer
Bei 12 Spalten benötigst du halt 12 SVERWEISE, was aber vom Aufwand her nicht so arg ist.
Das funktioniert auf jeden Fall.
Mfg
Gamer
Wie kann ich in der Pivot-Tabelle dann nach allen Daten eines Datums suchen und dann ganz einfach ein anderes Datum eingeben und es werden diese Werte angezeigt?
Kenn mich mit Pivot-Tabellen leider nicht so aus aber ich hätte dafür in diesem Fall evl. auch eine Verwendung, da ich solche Sachen bis jetzt mit SVERWEISEN gelöst habe.
mfg
gamer
Kenn mich mit Pivot-Tabellen leider nicht so aus aber ich hätte dafür in diesem Fall evl. auch eine Verwendung, da ich solche Sachen bis jetzt mit SVERWEISEN gelöst habe.
mfg
gamer
Puh...Pivat Tabellen isnd recht mächtig.
Am besten suchst du dir ein Tutorial raus. Normalerweise läufts aber so, dass man die Daten-Spalten in neue Spalten in der Pivot Tabelle zieht (per Drag&Drop). Diese werden dann, je nachdem wohin man so gezogen hat Gruppiert und man kann dann in einer Dropdown-Box auswählren welche Daten man haben möchte.
Vielleicht mal in einer Kopie rumprobieren.
Am besten suchst du dir ein Tutorial raus. Normalerweise läufts aber so, dass man die Daten-Spalten in neue Spalten in der Pivot Tabelle zieht (per Drag&Drop). Diese werden dann, je nachdem wohin man so gezogen hat Gruppiert und man kann dann in einer Dropdown-Box auswählren welche Daten man haben möchte.
Vielleicht mal in einer Kopie rumprobieren.
Also ein Suchfeld kann man hier wohl nicht verwenden. Eine Pivot-Tabelle erstellen und so das bekomm ich hin. Nur das Feld zum suchen wäre noch interessant gewesen.
Aber für den oberen Fall müsste man das Datum dann per Dropdown suchen. Wenn in der Tabelle schon ein paar Jahre drin sind wird das schon schwieriger.
Ansonsten sind die Pivot-Tabellen sicherlich gut.
Aber für den oberen Fall müsste man das Datum dann per Dropdown suchen. Wenn in der Tabelle schon ein paar Jahre drin sind wird das schon schwieriger.
Ansonsten sind die Pivot-Tabellen sicherlich gut.
Hallo volkspolizei!
Abgesehen davon, dass sich das Ganze schön langsam eher nach einem Fall für eine Datenbank anzuhören beginnt, könnte ich folgende VBA-Lösung anbieten:
Erwartet wird, dass in der Zieltabelle die Spaltenstruktur mit der Quelltabelle übereinstimmt - für das Beispiel oben etwa:
Daten in Quelltabelle: A2:K30 - Spalte A enthält "Datum", Spalte B enthält "Uhrzeit", ..., Spalte K enthält "Kennzeichen)
Kriterien in Zieltabelle B3:L3 - Spalte B enthält gesuchtes "Datum", Spalte C enthält gesuchte "Uhrzeit", ..., Spalte L enthält gesuchtes "Kennzeichen"
Ergebnisse in Zieltabelle B4:Lxx
Am einfachsten ist es, die Spaltenüberschriften der Daten in die Zieltabelle zu kopieren (im Beispiel also nach B2:L2) und unter den Überschriften die Kriterien einzutragen. Zellen ohne Einträge werden nicht als Kriterium verwendet. Würde also zB in B3 ein "Such-Datum" und in L3 ein "Such-Kennzeichen" eingetragen, werden ab B4 nur Datensätze angezeigt, bei denen "Datum" und "Kennzeichen" übereinstimmen, wäre B3 leer und nur das "Such-Kennzeichen" in L3 eingetragen, würde nur nach "Kennzeichen" verglichen. Damit ist es sogar möglich (aber kaum sinnvoll), nach allen Spalten zu filtern, wobei eine UND-Verknüpfung verwendet wird (alle Kriterien müssen übereinstimmen, wobei in dieser Fassung des Programms Groß-/Kleinschreibung ignoriert wird).
Am Beginn werden alte Ergebnisse (von der ersten Ergebniszelle B4 bis zum Tabellenende IV65536) gelöscht, wobei jedoch die Formatierungen erhalten bleiben.
Über das Laufzeitverhalten, besonders bei umfangreicheren Daten, kann ich nichts sagen, da ich nur mit dem im Beispiel angegebenen kleinen Bereich (28 Zeilen x 11 Spalten + Überschriftszeile) getestet habe.
Grüße
bastla
Abgesehen davon, dass sich das Ganze schön langsam eher nach einem Fall für eine Datenbank anzuhören beginnt, könnte ich folgende VBA-Lösung anbieten:
Sub Filtern()
'### ab hier anpassen ###
aData = Worksheets("Tabelle1").Range("A2").CurrentRegion 'A2 = erste Zelle des Datenbereiches in der Quelltabelle
R = 3 'Zeile mit Kriterien in der Zieltabelle (s.u.)
C = 2 'Erste Spalte mit Kriterien (numerisch; 2 = Spalte B)
With Worksheets("Tabelle2") 'Zieltabelle
'### ab hier unverändert lassen ###
aKrit = .Range(Cells(R, C), Cells(R, C + UBound(aData, 2) - 1))
R = R + 1
.Range(Cells(R, C), Cells(65536, 256)).ClearContents
For i = 1 To UBound(aData, 1)
Match = True
For j = 1 To UBound(aData, 2)
If aKrit(1, j) <> "" Then
If LCase(aData(i, j)) <> LCase(aKrit(1, j)) Then
Match = False
Exit For
End If
End If
Next
If Match Then
For j = 1 To UBound(aData, 2)
.Cells(R, C + j - 1).Value = aData(i, j)
Next
R = R + 1
End If
Next
End With
End Sub
Daten in Quelltabelle: A2:K30 - Spalte A enthält "Datum", Spalte B enthält "Uhrzeit", ..., Spalte K enthält "Kennzeichen)
Kriterien in Zieltabelle B3:L3 - Spalte B enthält gesuchtes "Datum", Spalte C enthält gesuchte "Uhrzeit", ..., Spalte L enthält gesuchtes "Kennzeichen"
Ergebnisse in Zieltabelle B4:Lxx
Am einfachsten ist es, die Spaltenüberschriften der Daten in die Zieltabelle zu kopieren (im Beispiel also nach B2:L2) und unter den Überschriften die Kriterien einzutragen. Zellen ohne Einträge werden nicht als Kriterium verwendet. Würde also zB in B3 ein "Such-Datum" und in L3 ein "Such-Kennzeichen" eingetragen, werden ab B4 nur Datensätze angezeigt, bei denen "Datum" und "Kennzeichen" übereinstimmen, wäre B3 leer und nur das "Such-Kennzeichen" in L3 eingetragen, würde nur nach "Kennzeichen" verglichen. Damit ist es sogar möglich (aber kaum sinnvoll), nach allen Spalten zu filtern, wobei eine UND-Verknüpfung verwendet wird (alle Kriterien müssen übereinstimmen, wobei in dieser Fassung des Programms Groß-/Kleinschreibung ignoriert wird).
Am Beginn werden alte Ergebnisse (von der ersten Ergebniszelle B4 bis zum Tabellenende IV65536) gelöscht, wobei jedoch die Formatierungen erhalten bleiben.
Über das Laufzeitverhalten, besonders bei umfangreicheren Daten, kann ich nichts sagen, da ich nur mit dem im Beispiel angegebenen kleinen Bereich (28 Zeilen x 11 Spalten + Überschriftszeile) getestet habe.
Grüße
bastla