ich würde mich über eure Gedanken zu folgender Aufgabe freuen:
Ich habe bei excel 9 Tabellenblätter zur Dokumentation von Tagegeschehen. Jeweils eine Tabellenspalte enthält zu erledigende Aufgaben. In der Spalte daneben trage ich "ja" ein, wenn die Aufgabe erledigt ist und "nein" wenn sie noch nicht erledigt ist. In einem weiteren Tabellenblatt möchte ich mir nun alle Aufgaben aus allen neun Tabellenblättern anzeigen lassen, die noch nicht erledigt sind. Wie mache ich das?
Wichtig ist noch, dass diese Tabellen täglich verändert werden. Die Gesamttabelle muss sich mit aktualisieren.
am einfachsten wird es, wenn du die Informationen gar nicht auf verteilten Arbeitsblättern erfasst, sondern in einer einzigen Tabelle. Der bisherige Name der Arbeitsblätter wird dann einfach zu einem neuen Feld in der Tabelle. Damit bist du weg vom Denken in Papierstrukturen und ein Schritt näher an Datenverarbeitung. Überlege genau, welchen Vorteil dir die getrennte Datenhaltung bietet. Die Gesamttabelle lässt sich sehr einfach mit Autofilter oder Formeln oder noch komfortabler mit einer Pivottabelle auswerten. Dazu noch ein Tipp aus der Praxis: Statt einen Erledigungsstatus mit Ja/Nein zu kennzeichnen, bietet es sich vielfach an, das Erledigungsdatum zu erfassen. Fälle ohne Datum sind noch offen, Fälle mit Datum erledigt. Dann kannst du auch das Datumsfeld mit auswerten.
Viele Grüße derHöpp
Folgende(r) 1 Nutzer sagt Danke an derHoepp für diesen Beitrag:1 Nutzer sagt Danke an derHoepp für diesen Beitrag 28 • ToSky
07.06.2023, 10:10 (Dieser Beitrag wurde zuletzt bearbeitet: 07.06.2023, 10:13 von ToSky.)
Vielen Dank für die Ideen. Da es sich um fortlaufende Tagesdokumentation für einzelne Personen handelt und die Tabellenblätter noch jeweils spezifische Kopfzeilen und Infos enthalten, machen die getrennten Arbeitsblätter m. E. schon Sinn (auch der Übersichtlichkeit halber).
Dass mit dem Datum finde ich gut. Meine Excel-Kenntnisse stecken eher in den Kinderschuhen. Die oben angegebene Formel habe ich leider nicht arbeitsfähig hinbekommen.
Power Query war auch ein Versuch meinerseits, bevor ich hier die Anfrage gestellt habe. Leider aktualisieren sich die Abfragen jedoch nicht, obwohl ich bei Daten die Aktualisierung auch manuell mehrfach probiert habe. Evt. hat ja dazu noch jemand eine Idee? In der Tat war ich damit zumindest bisher am nächsten am Erfolg.
anbei eine Beispieltabelle für eine Makro Lösung. Bitte mal testen ob das so optimal ist. Bitte die Daten in Tabelle "Ergebnis" löschen, eine anderes Sheet anklicken, Ergebnis neu anklicken, und staunen! Die Excel Welt kann sooo einfach sein!
Zum Makro: Das Makro befindet sich in der Tabelle Ergebnis, Das Makro kannst du nach dem Testen so in dein Original kopieren. Einzige Änderung, du musst deine Spalte für "Nein" im Makro angeben, im Beispiel ist es die Spalte "B". Ich gehe davon aus das der gesuchte Name in der Spalte davor steht, sonst musst du den Offset ändern! Mit Instr(Sht,"ungültig") kannst du alle unerwünschten Tabellen ohne die Nein Spalte überspringen! ** Mein Beispiel ist noch eine alte Excel 2003 Datei.
mfg Gast 123
Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:1 Nutzer sagt Danke an Gast 123 für diesen Beitrag 28 • ToSky
10.06.2023, 17:26 (Dieser Beitrag wurde zuletzt bearbeitet: 10.06.2023, 17:26 von snb.)
Zitat:Da es sich um fortlaufende Tagesdokumentation für einzelne Personen handelt und die Tabellenblätter noch jeweils spezifische Kopfzeilen und Infos enthalten, machen die getrennten Arbeitsblätter m. E. schon Sinn (auch der Übersichtlichkeit halber).
m.E. gar nicht. Du hast eben nicht versucht (schade) den klugen Vorschlag zu implementieren.
Vielen Dank für die Idee mit den Makros - das funktioniert sehr gut :) Gibt es eine Möglichkeit auf der Ergebnisliste noch ergänzend anzeigen zu lassen, aus welchem Tabellenblatt die jeweilige Aufgabe kommt?
freut mich das dir meine Makro Version gefallen hat. Danke für die Rückmeldung. Erweitern kein Problem: Ändere nur den Teil den ich unten angegeben habe. Mit dem ersten Zeile +1 erzeugst du eine Leerzeile zw. den Tabellen Man kann den Tabellen Namen auch in Spalte C angeben. das wäre: .Cells(Zeile, 3) = Sht Spiele einfach mal ein bissschen damit herum. So lernt man am schnellsten VBA.
mfg Gast 123
Code:
If Not rFind Is Nothing Then Adr1 = rFind.Address Zeile = Zeile + 1 '** Leerzeile zw. den Tabellen .Cells(Zeile, 1) = Sht .Cells(Zeile, 1).Font.Bold = True Zeile = Zeile + 1 Do
Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:1 Nutzer sagt Danke an Gast 123 für diesen Beitrag 28 • ToSky