Anzeige
Archiv - Navigation
564to568
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
564to568
564to568
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

riesen Problem mit Formel in Excel

riesen Problem mit Formel in Excel
09.02.2005 13:18:37
Sebastian
Hallo zusammen,
in der Zelle CR1 befindet sich eine Zellenangabe, z.B. CQ13:CZ19 .
In Zelle CT1 wird eine Formel eingetragen mit dem Code
ActiveCell.FormulaR1C1 = _
"=IF(RC[-1]"""",HLOOKUP(RC[-1]," & Range("CR1") & ",7,FALSE),"""")"
Jetzt besteht aber folgendes Problem:
Wenn die Formel erstellt wird, schreibt VBA nicht
=WENN(CS1"";WVERWEIS(CS1;CQ13:CZ19;7;FALSCH);"")
sondern
=WENN(CS1"";WVERWEIS(CS1;'CQ13':'CZ19';7;FALSCH);"")
So funktioniert die Formel aber nicht und es wird ein Fehler angezeigt.
Was kann man machen?
MfG
Sebastian

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: riesen Problem mit Formel in Excel
Udo
Du darfst FormulaR1C1, Formula und FormulaLocal nicht durcheinanderwürfeln.
Udo
?
09.02.2005 13:24:35
Sebastian
?
Keine Ahnung, was du mir damit sagen möchtest. ich habe das Erstellen der Formel mit dem Makrorecorder aufgezeichnet.
Wie und was da ist, keine Ahnung.
Kannst du mir weiterhelfen?
AW: riesen Problem mit Formel in Excel
Uduuh
Hallo,
versuch es so:
...&Range(Range("CR1")).address & ...
Gruß aus'm Pott
Udo
AW: riesen Problem mit Formel in Excel
09.02.2005 13:40:06
Sebastian
Hallo,
diese Version der Formel funktioniert leider nicht.
Aber trotzdem danke.
Sebastian
AW: riesen Problem mit Formel in Excel
Jan
Hi Sebastian,
was willst Du mit Deinem VBA-Code und dem SVERWEIS erreichen? Willst Du einen variablen Bereich für den SVERWEIS über einen Zellinhalt definieren?
jan
Anzeige
AW: riesen Problem mit Formel in Excel
09.02.2005 13:44:39
Sebastian
Hallo
in Zelle CQ1 wird ein Begriff eingetragen. In Zelle CR1 wird dieser Begriff gesucht
und ein Bereich angegeben, z.B. CQ13:CZ19 .
In Zelle CS1 wird nun ein weiterer Begriff eingetragen. In Zelle CT1 soll dieser Begriff
dann im Bereich aus Zelle CR1 gesucht werden.
Dieser Vorgang funktioniert auch, solange, bis die Formel in CT1 durch VBA eingetragen wird.
Die Bereiche ändern sich aber ständig, sogar mehrmals beim Ablauf des Codes.
AW: Riesenproblem mit Formel in Excel
Luc
Hallo Sebastian,
ohne jetzt näher auf die Zweckbestimmung der eingetragenen Formel einzugehen (das ist ja nicht das Primärproblem!), stelle ich fest, du hast schon 2 richtige Antworten bekommen. Vielleicht reicht es, beide miteinander zu verbinden?
Also, XL hat Schichten wie eine Zwiebel. Eine von dir in 1er Zelle eingetragene Formel trägt XL mehrfach ein, nämlich als...
.Formula - da stehen die englischen Formelbezeichnungen
.FormulaLocal - da steht ihre Übersetzung in das jew. nationale xlSubset
.FormulaR1C1 - charakterisiert die Bezüge in der Formel als vom Typ ZnnSnn, also Zeilen- u.Spaltennr.
außerdem gibt es noch weitere Formelnotate, z.B....
.FormulaArray - das die Formel nochmal enthält - wird wichtig bei Matrixformeln!
Die Formeln der bedingten Formatierung stehen auch noch irgendwo.
Wenn Zahlen oder Text in der Zelle stehen ist .Formula = .Value - bei Formeln nicht, da steht dann in .Value das Ergebnis der Formel.
Wenn du also R1C1 nach .Formula entfernst, würde das eher der Notation entsprechen wie sie dir mit Range("CR1") vorgeschlagen wurde. Das kannst du auch alles in der VBA-Hilfe nachlesen. Übrigens, der Recorder zeichnet immer nur "geradeaus" auf. Er ist ein Relikt aus früherer Zeit (da hat er auch die Mausbewegungen mit aufgezeichnet!). Man kann sich nicht immer darauf verlassen, dass das, was er aufgezeichnet hat, auch so funktioniert. Ohne "Endredaktion" geht's nur bei ganz simplen Sachen.
Gruß Luc
Anzeige
AW: Riesenproblem mit Formel in Excel
10.02.2005 07:14:51
Sebastian
Hallo Luc,
ich habe jetzt ein bischen rum gebastelt, aber das gewünschte ergebnis bekomme ich nicht hin. kannst mir da evtl. helfen?
gruß
sebastian
AW: Riesenproblem - Lösung
Luc
'n'Amnd Sebastian,
also wie ich schon sagte, den Makrorecorder (so nützlich er für den Einstieg auch ist) kannst du vor allem im Hinblick auf Zellbezüge voll vergessen! Der macht da sein eigenes Ding, was auch funktioniert, aber nicht, wenn per Makro eine Formel mit Bezügen in eine Zelle eingetragen wdn soll. Da gehen dann nämlich die ursprünglichen Zusammenhänge verloren. Das ich diese Art der Bezugsnotation so häufig im Forum antreffe, beweist mir nur, dass die Meisten über den Makrorecorder zu VBA gekommen sind (was normal ist), sich aber darüber hinaus nicht mit dem VBA-Objekt- und -Datenmodell beschäftigt haben, was ein unbedingtes Muss ist, wenn man die ablfd Prozesse wirklich verstehen will. Ich benutze diese Schreibweise so gut wie nie.
So, nun aber zu deinem Problem. Es gibt 2 Möglichkeiten, die Formel in einem Makro unterzubringen:
1. Zuweisung an zelle.Formula in US-Basis-Schreibform (englisch, geht vielleicht in der Umsetzung am schnellsten, musst du aber die WorksheetFunctions nachschlagen oder aus der Recorderaufzeichnung entnehmen)
2. Zuweisung an zelle.FormulaLocal in deutscher Schreibweise (ist bei dir offensichtlich eingestellt; geht nicht, wenn XL auf Englisch gestellt ist) - habe ich jetzt getestet, macht keinen Unterschied, wird auch sofort ausgerechnet (wenn du deutsch in .Formula schreibst, wird nicht sofort gerechnet - Hierarchieverletzung - XL muss erst intern umwandeln)
Ansonsten nimmst du einfach deine Formel wie sie ist, ergänzt die zusätzlichen "" und die Formelteile, die irgendwoanders herkommen und fertig wie folgt:
Vs1(US): Range("CT1").Formula = "=IF(CS1&lt&gt"""",HLOOKUP(CS1," & _
Range("CR1") & ",7,FALSE),"""")"
Vs2(dt): Range("CT1").FormulaLocal = "=WENN(CS1&lt&gt"""";WVERWEIS(CS1;" & _
Range("CR1") & ";7;FALSCH);"""")"
Das war's dann schon und die Formel funktioniert sofort und auch fehlerfrei.
Gruß Luc
Anzeige
Danke, Klappt wunderbar.
11.02.2005 07:24:02
Sebastian
o.T.
AW: Riesenproblem mit Formel in Excel
Luc
Hallo Sebastian,
lese gerade erst deine NR - muss ich alles nochmal sichten. Muss hier jetzt weg - vielleicht heute or morgen abend.
Gruß aus Bln
Luc

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige