Anzeige
Archiv - Navigation
1444to1448
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formelfehler nach Update SQL-Statement

Formelfehler nach Update SQL-Statement
03.09.2015 22:24:22
TF
Ich habe ein Excel-Sheet. In einem Register befindet sich ein SQL-Statement, das Daten aus einer Warenwirtschaft holt und aktualisiert. Bei jeder Aktualisierung kommen also weitere Zeilen hinzu.
In einem anderen Register sind in den ersten 500 Zeilen Planwerte hart eingetragen.
In die Zeilen darunter werden nun per simpler Formel Werte aus dem Register mit dem SQL Statement kopiert.
Dadurch habe ich IST-Werte und Planwerte in einem Register und kann per Pivotfunktion auswerten.
Das Problem ist nun Folgendes: Im Auswerteregister steht in der untersten Zeile die Formel z.B. =SQLRegister A1500. In der Zeile darueber steht dann =SQLRegister A1499, drunter 1501 usw.
Wird nun das SQL Statement upgedatet, sollte nun im Auswerteregister unter der Zeile mit Bezug auf Zeile 1500 weiterhin die 1501 stehen. Was aber passiert ist, dass unter die 1500 der Wert der letzten Zeile im SQL Statement geraet. Wennn also z.B. 100 Zeilen aktualisiert werden, springt die Formel von 1501 auf 1600 und die Werte dazwischen werden "verschluckt". Dadurch muss nach jedem Update die Formel fuers Kopieren wieder angepasst werden. Nicht viel Aufwand, aber doch laestig.

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formelfehler nach Update SQL-Statement
04.09.2015 06:26:33
fcs
Hallo TF,
benutze die Funktion INDEX für die Datenübername. Die ist bei entsprechendem Aufbau weniger empfindlich gegen das Löschen/Verschieben von Zellen in der Quelle.
Auswertung

 AB
501PlanPlan 500
502ISTZeile 001
503ISTZeile 002

Formeln der Tabelle
ZelleFormel
A502=INDEX(SQLRegister!A:A;ZEILE()-ZEILE(A$501)+1;1)
B502=INDEX(SQLRegister!B:B;ZEILE()-ZEILE(B$501)+1;1)
A503=INDEX(SQLRegister!A:A;ZEILE()-ZEILE(A$501)+1;1)
B503=INDEX(SQLRegister!B:B;ZEILE()-ZEILE(B$501)+1;1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige