Daten auslesen und in Diagramm wiedergeben
Hallo zusammen!
Da meine Excel Kenntnisse begrenzt sind, stehe ich vor folgendem Problem:
Ich habe ein Dokument, indem ein Komplettes Jahr in die einzelnen Kalenderwochen aufgeteilt ist. D.h. 54 Tabellen innehalb des Dokuments. Jetzt möchte ich gerne auf einer weiteren Tabelle einzelne inhalte aus den KWen auslesen, und dann in einem Diagramm wiedergeben.
Das ganze sollte nach möglichkeit so aussehen, dass man in einem Pulldown-Menü die gewünschte KW auswählen kann, und dann automatisch die richtigen Daten ausgelesen werden.
Die Daten, die ausgelesen werden müssen sind auf jeder tabelle an der gleichen Stelle, das einzige was sich ändert ist die Tabelle von der ausgelesen werden muss.
Ist das überhaupt möglich? Wie gesagt, sind meine Excel Kenntnisse nicht überragend, aber für den Alltag reichts.
Arbeite mit WinXP und Office 2003
Würde mich über Hilfe freuen!
Gruß
Singlecoil
Da meine Excel Kenntnisse begrenzt sind, stehe ich vor folgendem Problem:
Ich habe ein Dokument, indem ein Komplettes Jahr in die einzelnen Kalenderwochen aufgeteilt ist. D.h. 54 Tabellen innehalb des Dokuments. Jetzt möchte ich gerne auf einer weiteren Tabelle einzelne inhalte aus den KWen auslesen, und dann in einem Diagramm wiedergeben.
Das ganze sollte nach möglichkeit so aussehen, dass man in einem Pulldown-Menü die gewünschte KW auswählen kann, und dann automatisch die richtigen Daten ausgelesen werden.
Die Daten, die ausgelesen werden müssen sind auf jeder tabelle an der gleichen Stelle, das einzige was sich ändert ist die Tabelle von der ausgelesen werden muss.
Ist das überhaupt möglich? Wie gesagt, sind meine Excel Kenntnisse nicht überragend, aber für den Alltag reichts.
Arbeite mit WinXP und Office 2003
Würde mich über Hilfe freuen!
Gruß
Singlecoil
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 46868
Url: https://administrator.de/contentid/46868
Ausgedruckt am: 23.11.2024 um 04:11 Uhr
6 Kommentare
Neuester Kommentar
Hallo Singlecoil und willkommen im Forum!
Du benötigst zur Umsetzung Deines Vorhabens die beiden Funktionen INDEX() und INDIREKT().
Vorgangsweise Kombinationsfeld:
Wenn Du jetzt das Kombinationsfeld aufklappst, müsstest Du alle Blattnamen sehen. Bei Auswahl eines Blattes wird in C2 die laufende Nummer des von Dir gewählten Blattes eingetragen.
Zugriff auf Daten des gewünschten Blattes: Mit der Formel
kannst Du nun zB auf den Inhalt der Zelle A3 des im Kombinationsfeld gewählten Blattes zugreifen.
Erklärung:
Erweiterungsmöglichkeit:
HTH
bastla
Du benötigst zur Umsetzung Deines Vorhabens die beiden Funktionen INDEX() und INDIREKT().
Vorgangsweise Kombinationsfeld:
- Als Datenbereich für das Kombinationsfeld die Namen der Blätter in einer Spalte untereinander eintragen (zB K2:K55). Diese Liste kann natürlich (aus optischen Gründen) auch in einer anderen Tabelle platziert werden.
- Symbolleiste "Formular" einblenden, "Kombinationsfeld" anklicken und in der Tabelle an der gewünschten Position mit der Maus einzeichnen.
- Kombinationsfeld doppelklicken und im Register "Steuerung" den "Eingabebereich" auf die Blattliste setzen ($K$2:$K$55)
- In "Zellverknüpfung" eine Zelle angeben, in welche die Nummer des gewählten Eintrages geschrieben wird, zB $C$2.
- Tabelle anklicken, so dass das Kombinationsfeld nicht mehr markiert ist (wieder markieren lässt sich dieses durch Anklicken bei gedrückter Strg-Taste).
Wenn Du jetzt das Kombinationsfeld aufklappst, müsstest Du alle Blattnamen sehen. Bei Auswahl eines Blattes wird in C2 die laufende Nummer des von Dir gewählten Blattes eingetragen.
Zugriff auf Daten des gewünschten Blattes: Mit der Formel
=INDIREKT(INDEX($K$2:$K$55;$C$2;1)&"!" & "A3")
Erklärung:
- Die INDEX()-Funktion holt anhand der Nummer in C2 aus der Blattliste K2:K55 den Blattnamen. Dieser wird verknüpft mit "!" und der Zelladresse ("A3").
- INDIREKT() liefert den Inhalt der durch obige Kombination "Blattname" & "!" & "A3" (also zB KW12!A3) erstellten Zelladresse als Ergebnis zurück.
Erweiterungsmöglichkeit:
- Liste der benötigten Zellen in eine Spalte schreiben (zB ab L2)
- Die Formel ändern auf
=INDIREKT(INDEX($K$2:$K$55;$C$2;1)&"!" & L2)
- und nach unten kopieren.
HTH
bastla
Hallo Singlecoil!
Leerstellen in Blattnamen sind meistens keine gute Idee - versuch mal "KW 1" auf "KW1" zu ändern (Blattname und Liste). Um alle Blätter in einem Rutsch von den Leerstellen zu befreien, könntest Du folgendes Makro verwenden:
Grüße
bastla
Leerstellen in Blattnamen sind meistens keine gute Idee - versuch mal "KW 1" auf "KW1" zu ändern (Blattname und Liste). Um alle Blätter in einem Rutsch von den Leerstellen zu befreien, könntest Du folgendes Makro verwenden:
Sub MakeKWNames()
Dim Blatt As Object
For Each Blatt In Worksheets()
If UCase(Left(Blatt.Name, 2)) = "KW" Then Blatt.Name = "KW" & Trim(Right(Blatt.Name, 2))
Next
End Sub
Grüße
bastla