Tabellenvorbereitung mit open End

Hallo zusammen,

ich sitz hier grade vor meinem Excel und bereite einen Szenariorechner vor. Am Ende soll eine Grafische Auswertung dabei rauskommen also ein Liniendiagramm.
Das Problem dabei ist, dass nicht jeder selbst Hand anlegen und ein eigenes Diagramm erstellen soll, sondern lieber ein vorgefertigtes Makro oder eben ein Diagramm, das sich schön flexibel darstellt.

Ich hab also in einem Fall bestimmte Werte für die Jahre 2003 bis 2009. Will aber so flexibel sein, dass dieses Diagramm auch bis 2028 gehen könnte…
Wenn es aber dann nur bis 2009 geht, dann soll dementsprechend auch nur bis 2009 angezeigt werden and so on…

geht das? Welchen Weg könnte ich gehen? Ich dachte eigentlich, dass ich mit STRG und Pfeiltasten springen könnte um den relevanten Bereich in Excel zu selektieren, aber pustekuchen, durch die Formeln sind natürlich bis zum Jahr 2029 überall Werte drin, auch wenn diese unsichtbar sind…

vielen Dank!
Munich

Hallo Munich,

der einfachste Weg dürfte sein, per Makro die Zeilen mit den Jahreszahlen, die nicht angezeigt werden sollen, auszublenden.

Daten von ausgeblendeten Zellen werden im Diagramm nicht angezeigt.
Nachfolgendes Makro blendet die Zeilen ab der vom Benutzer eingebenen Jahreszahl aus, wenn die Bereiche ‚StartJahre‘ und ‚Jahre‘ korrekt festgelegt sind.

Sub ZeilenAusblenden()
' Benutzereingabe für das End-Jahr des Diagramms. Alternativ kann natürlich auch der Wert einer Zelle abgefragt werden.
 EndJahr = Application.InputBox("Bis zu welchem Jahr soll das Diagramm erstellt werden?", "Diagramm", 2009, , , , , 1)
 If EndJahr = False Then Exit Sub
 Range("Jahre").EntireRow.Hidden = False 'Alle Zeilen einblenden
 ''Jahre' ist der Name des Bereichs in einer Spalte mit den Jahreszahlen von 2003 bis 2028
 Range("StartJahre").Select
 ' 'StartJahre' ist der Name der Zelle mit der 1. Jahreszahl (hier 2003)
 For i = 1 To Range("Jahre").Rows.Count
 If ActiveCell.Value \> EndJahr Then
 Selection.EntireRow.Hidden = True
 End If
 ActiveCell.Offset(1, 0).Select
 Next i
 Range("StartJahre").Select
End Sub

Gruss

Franz

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Danke soweit, aber
Ich hab leider kaum plan von Visual Basic (ist das doch, oder?)

Daten von ausgeblendeten Zellen werden im Diagramm nicht
angezeigt.
Nachfolgendes Makro blendet die Zeilen ab der vom Benutzer
eingebenen Jahreszahl aus, wenn die Bereiche ‚StartJahre‘ und
‚Jahre‘ korrekt festgelegt sind.

Also den bereich in dem die Jahreszahlen stehen hab ich mit „Jahre“ benannt… Aber welchen Bereich muss ich mit Jahre benennen?
Spielt es eine Rolle, ob mein Jahre-Bereich mit Formeln befüllt ist? Wenn Ende ist wird alles ausgeblendet bisher.
Das Enddatum würde ich gerne aus einer Zelle lesen… Wie mache ich
das dann?

Range(„Jahre“).EntireRow.Hidden = False 'Alle Zeilen
einblenden

Alle Zeilen oder alle Spalten? Weil meine Auflistung ist in etwa so:

 2003 2004 2005 2006
kurve1 3 2 5 3 
kurve2 1 2 3 4

und so weiter…
Muss ich dann rows durch cols austauschen?

vielen Dank jedenfalls schon mal für Deine Hilfe
Munich

update: Juhu :smiley:
vielen Dank nochmal…
ich habs jetzt mit Google selbst lösen können…
Column statt rows und die Bereiche richtig definiert und jetzt funktioniert es. Dann hab ich noch wie Du geschrieben hast eine feste Zahl definiert. Weil die anderen Inhalte ja leer sind nimmt er aber immer nur die nicht leeren Zellen und blendet den Rest aus…
Richtig praktisch :smile:))

Suuuuper *freu* *hüpf*