Dynamische Tabelle in Excel 97

Ich habe ein Problem mit einer dynamischen Tabelle in Excel 97.
Über eine Sortierungsfunktion hole ich mir aus den Spalten A bis C (n) bestimmte Fälle, bei denen der Wert größer Null ist und habe diese über einen Bezug dann in den Spalten H bis J stehen. Das klappt auch sehr gut.

Im Bereich h1:J1 bis h(n):J(n) stehen somit immer unterschiedliche Werte, n ist selbst auch unterschiedlich. Und darüber möchte ich eine dynamische Tabelle erstellen.
Jetzt habe ich folgenden Link gefunden, mit den Tipps dort komme ich nicht klar (vielleicht verstehe ich es auch nur nicht richtig) auf alle Fälle bringt mir mein Excel 97 nur Fehlermeldungen, wenn ich versuche dieses x oder y zu definieren.

Kann mir jemand etwas Konkreter auf meinen Fall bezogen weiterhelfen?

http://www.excelformeln.de/tips.html?welcher=9

Spalte H: Name
Spalte I: Bruttobetrag
Spalte J: Nettobetrag

darunter stehen dann in den Zeilen die Werte dazu.

Ich benötige somit das Diagramm auf h1:J(n) - wobei (n) eben bei mir variabel ist.

Ich hoffe, mir kann jemand hier weiterhelfen.

viele Grüße und vielen Dank

Petra

um die Diagrammdatenquelle dynamisch zu halten:
Sub dynamischernamensbereich()
Dim liste As Name
On Error Resume Next
ThisWorkbook.Names(„dein bereichsname“).Delete
ThisWorkbook.Names.Add „deinbereichsname“, _
ThisWorkbook.Sheets(„tabelle1“).Range(„a1“).CurrentRegion
End Sub
Diagramm1 muss schon vorhanden sein

um nur den Bereich dynamisch zu halten:
Sub arraydynamisch()
On Error Resume Next
ThisWorkbook.Names(„test“).Delete
ThisWorkbook.Names.Add „test“, _
ThisWorkbook.Sheets(„tabelle1“).Range(„h1“, Range(„j65536“).End(xlUp))
End Sub

Beispieldatei zur Verdeutlichung ist unterwegs
MFG
Harry

Super, du hast mir mal geholfen. Das klappt. Genau so etwas in VBA habe ich auch gesucht.

vielen Dank

Petra

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

um die Diagrammdatenquelle dynamisch zu halten:
Sub dynamischernamensbereich()
Dim liste As Name
On Error Resume Next
ThisWorkbook.Names(„dein bereichsname“).Delete
ThisWorkbook.Names.Add „deinbereichsname“, _
ThisWorkbook.Sheets(„tabelle1“).Range(„a1“).CurrentRegion
End Sub
Diagramm1 muss schon vorhanden sein

Hallo Harald,

das Makro funktioniert jetzt solange ich das Diagramm in dem Tabellenblatt belasse.

Mein Diagramm wurde aber als neues Blatt erstellt und somit hat das Blatte auch den Namen Diagramm 1. Jetzt läuft aber das Makro leider nicht mehr.

Folgendes Makro habe ich ausprobiert, bekomme aber einen Fehler gemeldet.

Sub diagramm()
Sheets(„Diagramm1“).Select
ActiveChart.ChartArea.Select
ActiveChart.SetSourceData Source:=Sheets(„Tabelle1“).Range(„H1“, Range(„J65536“).End(xlUp)), PlotBy _
:=xlColumns
End Sub

Hallo Petra
Hab dein Problem ausprobiert und festgestellt das du recht hast.
mir ist aber derzeit noch keine andere Lösung eingefallen.
Habe aber ein Beispiel aus einem Excel-Buch das man eventuell so umbauen kann dass es deinen Wünschen entspricht .
Ich schick sie dir mal rüber .schau Sie dir mal an.Dieser dynamische Bereich basiert auf der Formel:BEREICH.VERSCHIEBEN
werd mich selber auch mal damit befassen,hab jedoch derzeit ein bischen Stress
mfg
Harry

Hallo Harry,

vielen Dank dafür. Es freut mich sehr, dass du mir so gut weitergeholfen hast. Ich bin mal gespannt, ob Du eine Lösung findest.

viele Grüße

Petra

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

ich habs
der Fehler lag daran,dass ich ein komplettes Array dymamisch gehaltenhabe und ein Diagrammsheet dieses nicht annimmt.
gehe folgendermassen vor
schreib 3 Makros immmer derjenigen spaltebezogen:
Sub spalteh()
On Error Resume Next
ThisWorkbook.Names(„spalteh“).Delete
ThisWorkbook.Names.Add „spalteh“, _
ThisWorkbook.Sheets(„tabelle1“).Range(„h1“, Range(„h65536“).End(xlUp))
End Sub
das 2. Makro:sub spaltei
das3.: sub spaltej
vergiss nicht die rangebefehle auf i bzw j umzustellen.
als nächstes erzeug Namen die "spalteh;spaltei;spaltej heissen.
Schaltbutton erzeugen und die 3 Makronamen zeilenweise auflisten.
nun werden die Spalten einzeln dynamisch gehalten.
als nächstes öffnest du im diagramm die Datenquelle[REIHEN]und gibst unter WERT folgendes ein:
Reihe1: =DEINDATEINAME.xls!spalteh
Reihe2: =DEINDATEINAME.xls!spaltei
Reihe3: =DEINDATEINAME.xls!spaltej
das wars
Beispieldatei folgt wie üblich