Automatische Formeländerung oder so

Tag auch,

folgendes Problem: In einer Tabelle gebe ich täglich spaltenweise neue Daten ein. Die Weiterverarbeitung in verschiedenen anderen Blättern soll auf Basis der neuesten, d.h. „rechtesten“ Spalte erfolgen. Wie bringe ich EXCEL dazu, für die Berechung in den anderen Blättern immer die derzeit rechteste Spalte zu verwenden, ohne daß ich per Hand jeden Tag Formeln anpassen muß?

Danke und Gruß
Christian

P.S. Zur Verdeutlichung noch mal ein Bsp.:
Montag
A1: 200
A2: 100
A3: 150

Dienstag
B1: 400
B2: -350
B3: -15

Mittwoch
C1: -150
C2: -500
C3: 1000

Berechnung in anderem Blatt
Montag
A1 (zweite Tabelle) 1000-A1 (erste Tabelle)
A2 (zT): 1000-A2 (eT)
A3 (zT): 500-A3 (eT)

Dienstag
A1(zT): 1000-B1 (eT)
A2(zT): 1000-B2 (eT)
A3(zT): 500-B3 (eT)

usw.
Wie krieg ich das hin, ohne daß ich in der zweiten Tabelle jeden Tag die Formeln anpassen muß?

über ein paar ecken geht’s ganz einfach. ich gehe dabei aber davon aus, dass in deinen spalten nur numerische werte stehen. also, mit der funktion „anzahl“ erhältst du die anzahl der numerischen werte innerhalb eines angegebenen bereichs. angenommen du hast also 10 zeilen und in der zweiten zeile bereits 50 spalten mit zahlen befüllt, dann liefert „=anzahl(2:2)“ den wert „50“. wenn die eingabe bereits in der ersten spalte erfolgt ist, dann ist das auch die spaltennummer der letzten eingabe.

mit der index-funktion kannst du nun den dazugehörigen wert suchen. mit „=index(a:iv;2;anzahl(2:2))“ erhältst du also den letzten wert der zeile 2 (max. 256 spalten!).

wenn du aus einem anderen arbeitsblatt referenzieren willst, musst du natürlich entsprechend die referenzen ändern.

erwin

Klasse, in meiner Test-Tabelle funktionierts schon mal. In der richtigen und etwas komplizierteren Tabelle hauts noch nicht hin, aber das wird schon.

Im Notfall melde ich mich nochmal.

Da hat sich jedenfalls jemand einen dicken Pluspunkt verdient. Wenn die EXCEL-Hilfe nicht das komplette Gegenteil zur EXCEL-Funtionalität wäre, bräuchte man das Forum eigentlich gar nicht. Aber so…

Danke.
Christian

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

Nachfrage

wenn du aus einem anderen arbeitsblatt referenzieren willst,
musst du natürlich entsprechend die referenzen ändern.

Bei welchen Parametern muß ich den „Tabelle!xxx“ einfügen?
Irgendwie bekomme ich da nicht hin.

Danke trotzdem nochmal. Du weißt gar nicht, wie sehr Du mir geholfen hast.

Gruß
Christian

sollte in etwa so funktionieren:

=index(tabelle1!a:iv;2;anzahl(tabelle1!2:2))

hab’s aber leider noch nicht probiert (arbeite normalerweise unter linux).

erwin

Korrektur
so funktionierts besser:
um den letzten eintrag der 1. zeile in Tabelle1 (unabhängig vom typ der einträge - zahl oder text) zu bekommen:

=index(Tabelle1!1:1;1;anzahl2(tabelle1!1:1))

vorteil dieser lösung: anzahl2 zählt ALLE spalten, egal ob nur numerische werte oder auch textwerte beinhaltet sind.

ausserdem kann man diese formel nur beliebig oft kopieren - excel wird den zeilenbezug automatisch relativ zur ersten zelle mit der formel einfügen - fügt man also die obige formel in die zelle a1 und kopiert sie nach a2, so bessert excel die formel automatisch auf =index(Tabelle1!2:2;1;anzahl2(tabelle1!2:2)) aus. man kann damit ganz leicht von mehreren zeilen die letzte zelle ermitteln…

erwin

Tag auch,

Christian

Ich finde die Idee von Erwin R. gut. Du brauchst also nur die Spalten-Nr. um den letzten Wert zu finden, bzw. wiederzugeben. Zu Deiner Tabelle hätte ich aber noch folgenden Verbesserungsvorschlag :
Die Ur-Datentabelle baust Du wie einen Terminplan nach Tagen auf, mit 2 Lückenspalten am Wochenende, Überschrift beliebig - logisch wäre das Datum. In irgendeiner - nicht veränderbaren Zelle, mit Namen z. B. „Ausgangsdatum“ schreibst Du das Datum vom Tag vor dem Beginn deiner Datenerhebungsserie auf.
In der Zieltabelle hast Du jetzt auch eine Überschrift, die heisst =Heute() und liefert das aktuelle Datum. Die Spaltennummer bekommst Du also jetzt aus der Formel =Heute()-Ausgangsdatum [Heute() als Bezug zur Überschrift].
Der Vorteil liegt auf der Hand : Wenn Du doch mal die Werte von Vorgestern brauchst, dann änderst Du in der Überschrift einfach nur das Datum.

Andreas

so funktionierts besser:
um den letzten eintrag der 1. zeile in Tabelle1 (unabhängig
vom typ der einträge - zahl oder text) zu bekommen:

=index(Tabelle1!1:1;1;anzahl2(tabelle1!1:1))

vorteil dieser lösung: anzahl2 zählt ALLE spalten, egal ob nur
numerische werte oder auch textwerte beinhaltet sind.

Textspalten zu Beginn der Reihe kann man auch über index(…;…;anzahl(…)-1) ausgleichen. Das Problem hatte ich zwischenzeitlich.

ausserdem kann man diese formel nur beliebig oft kopieren -
excel wird den zeilenbezug automatisch relativ zur ersten
zelle mit der formel einfügen - fügt man also die obige formel
in die zelle a1 und kopiert sie nach a2, so bessert excel die
formel automatisch auf
=index(Tabelle1!2:2;1;anzahl2(tabelle1!2:2)) aus. man kann
damit ganz leicht von mehreren zeilen die letzte zelle
ermitteln…

Ich komme jetzt langsam aus dem Rhythmus mit dem Bedanken. Also: Vielen Dank nochmal.

Gruß
Christian