Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
732to736
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
732to736
732to736
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

"Namen" - max. Länge von "Bezieht sich auf"

"Namen" - max. Länge von "Bezieht sich auf"
22.02.2006 00:11:00
"Bezieht
Hallo,
bei der Definition von "Namen" gibt es offenbar eine maximale Länge für die hinterlegte Formel. Wie kann man das umgehen bzw. welche Alternative gibt es.
Hintergrund ist die Erstellung eines dynamischen Diagramms mit gleichzeitiger Anzeige von Referenzwerten. Dazu wird ein Array analog der Beschreibung in http://tushar-mehta.com/excel/charts/straight_lines/index.html erstellt.
Einen Referenzwert ermittle ich z.B. mit '=WENN(ISTFEHLER(FINDEN("-";Tabelle1!$AK$2;1))=FALSCH;LINKS(Tabelle1!$AK$2;FINDEN("-";Tabelle1!$AK$2;1)-1);WENN(ISTFEHLER(FINDEN("&gt";Tabelle1!$AK$2;1))=FALSCH;RECHTS(Tabelle1!$AK$2;FINDEN("&gt";Tabelle1!$AK$2;1));""))*ZEILE(dataXY)/ZEILE(dataXY)'. Diese Formel ist als Name in "Bezieht sich auf" eingetragen.
- dataXY ist ein anderer Name
- die Zelle AK2 enthält einen string, aus dem der Referenzwert extrahiert wird
Da die Zelle AK2 noch nach weiteren Mustern durchsucht werden soll, ist die oben angegebene Formel noch zu ergänzen. Dies funktioniert aber nicht, da es offenbar eine maximale Länge in "Bezieht sich auf" bei der Namensdefinition gibt.
Schreibt man die obige Formel in eine Zelle A100 (ohne "=", als Text formatiert) und erstellt einen Namen mit '=AUSWERTEN(INDIREKT("Tabelle1!A100"))', dann wird bei Verwendung des Namens "#WERT!" als Fehler ausgegeben.
Im Moment ergeben sich 2 Fragen:
- Welche Möglichkeiten gibt es, einen für das dynamische Diagramm notwendigen Namen größerer Länge zu erstellen?
- Wie kann man die in einer Zelle enthaltene Formel so in einen Namen integrieren, dass sie auch ausgewertet wird? Diese Variante wäre angenehmer, da das Editieren in "Bezieht sich auf" doch etwas mühsam ist mit der Maus;-) (insbes. wenn man für 25 Diagramme gleichen Aufbaus aber mit unterschiedlichen Daten-Quellen bei einer kleinen Änderung in der Formel die definierten Namen einzeln ändern muss)
Danke für eure geschätzten Vorschläge!
Petra

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: "Namen" - max. Länge von "Bezieht sich auf"
22.02.2006 01:06:44
"Bezieht
Hallo,
eine alternative wäre ggf. daß du den Namen per Makro definierst.
Dann kannst du die Fallunterscheidung innerhalb vom Makro erledigen und die Namensdefinition wird wesentlich kürzer.
(in VBA über ActiveWorkbook.Names.Add Name:="Test", RefersToLocal:="=Tabelle1!$A$1"
Wenn du das Marko dann im Klassenmodul der Tabelle1 unter dem Ereignis
Worksheet_Change steht, werden dann auch automatisch die Namen aktualisiert.
Gruß, Daniel
AW: "Namen" - max. Länge von "Bezieht sich auf"
22.02.2006 08:35:19
"Bezieht
Hallo Petra,
hmmm, da sind mehrere Punkte.
Ja, es gibt da eine Limitation: 255 Zeichen. Guckst Du http://www.xlam.ch/xlimits/xllimit4.htm Die hast Du aber noch nicht erreicht.
Das Editieren im Feld "Bezieht sich auf" ist nur über die Maus in der Tat etwas schwierig, daher drücke ich immer F2, um dann mit der Tastatur arbeiten zu können.
Nun zur Formel:
Kürzer wird sie, wenn Du die jeweilige Prüfung in den wenn()-Formeln änderst; statt istfehler(finden())=0 nimm doch nur finden(). Das liefert Dir auch 0 oder 1.
#WERT! wird dann ausgegeben, wenn Deine wenn()-Formel einen echten Text liefert, also nicht nur Textzahlen. Ich vermute, daß Du aus der Zelle AK2 nicht nur Zahlen ermittelst, sondern auch mindestens ein weiteres Zeichen.
btw: warum dieser Formelbestandteil: *ZEILE(dataxy)/ZEILE(dataxy)? Um aus einer Textzahl eine Zahl zu machen? Dafür reicht =--wenn(...)
Um Dein grundsätzliches Problem zu lösen, würde ich einzelnen Formelbestandteilen Namen geben und diese dann in einer Formel verarbeiten.
Hilft´s Dir weiter?
Gruß Heiko
Anzeige
AW: "Namen" - max. Länge von "Bezieht sich auf"
22.02.2006 14:57:20
"Bezieht
Hallo Heiko,
danke für die Tips! F2 für das Editieren von "Bezieht sich auf" macht doch vieles einfacher:-)
"istfehler" habe ich jetzt weggelassen, funktioniert! (komisch, hatte es ursprünglich OHNE "istfehler", war wohl noch was anderes falsch)
"#WERT!" hatte ich nur bei Zellen ohne Inhalt, das eigentliche Problem wird mit "#BEZUG!" gemeldet. Liegt wohl daran, dass in diesem Fall die Formel in einer Zelle stand und ich sie im "Namen" nur auswerten wollte. Ist aber einfacher in Zellen zu editieren als die Definition der Namen zu ändern, daher wäre mir dieser Ansatz lieber gewesen.
'=AUSWERTEN(INDIREKT("Tabelle1!A100"))' liefert jedenfalls "#BEZUG!", wenn der Ausdruck zur Ermittlung des Referenzwerts in A100 steht. Habe mal statt dessen nur ne einfache Formel in A100 geschrieben (z.b. (1+2)*5), das funktioniert. Offenbar können Bezüge auf andere Zellen dann nicht mehr ausgewertet werden?! Wer weiß dazu genaueres?
ZEILE(dataxy)/ZEILE(dataxy) erzeugt ein Array mit "1", das genau die gleiche Länge wie die übrigen im Diagramm enthaltenen Daten hat.
(vgl. hierzu http://tushar-mehta.com/excel/charts/straight_lines/index.html)
Es soll also nicht nur in eine Zahl umgewandelt werden.
Die Formel aufzuteilen wäre eine Möglichkeit, dann komme ich aber schnell auf 150 zu definierende Namen und die jeweils zu editieren ist echt mühsam.
Ich werde jetzt gleich noch die Variante von Daniel ausprobieren und die Namen mit VBA erstellen. Mal sehen, ob das klappt.
Gruss
Petra
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige