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

Formelberechnug per Macro und #Name?

Formelberechnug per Macro und #Name?
17.01.2006 16:25:30
Jens
Hallo zusammen.
Zum 2ten Mal begegne ich diesem blöden Problem.
Ich lasse eine Zelle (M2) per Formel füllen, in diesem Fall
=Rechts(C4;LÄNGE(C4)-SUCHEN(",";C4)).
Per Macro sieht das so aus:
ActiveCell.FormulaR1C1 = "=Rechts(R[2]C[-10],Länge(R[2]C[-10])-SEARCH("","",R[2]C[-10]))"
in C4 steht z.B. Hauptstr. 143-156, 51467 Bergisch Gladbach
Ziel ist es, Die Strasse, PLZ und den Ort in 3 verschiedene Zellen zu bekommen.
Nun wollte ich die Zelle M2 kopieren, und mit LTrim das führende Leerzeichen wegbekommen.
Dummerweise wird immer nur #Name? kopiert. Ich muss erst per Doppelklick in die Zelle M2 klicken, dann funktioniert auch alles. Das Problem hatte ich schon einmal, da trat es aber erst bei der Berechnung der letzten Zelle auf, da konnte ich mit leben. Nun ist es mitten drin, und ich komme deswegen nicht weiter.
Meine Fragen wären nun:
Warum wird die Zelle nicht mit dem entsprechenden Wert gefüllt? Mache ich dort was falsch?
Und wie kann ich evtl. diesen Doppelklick per Makro ausführen lassen.
Ich poste mal zum evtl. besseren Verständnis den Teil des Macros. Ist umständlich, aber ich wollte ja den Fehler umschiffen^^
ActiveCell.FormulaR1C1 = "=Left(R[2]C[1],SEARCH("","",R[2]C[1]))"
Range("M2").Select
ActiveCell.FormulaR1C1 = "=Rechts(R[2]C[-10],Länge(R[2]C[-10])-SEARCH("","",R[2]C[-10]))"
Range("M2").Select
Selection.Copy
Range("M3").Select
Selection.PasteSpecial Paste:=xlValues
Range("M2").Select
ActiveSheet.Paste
Trimmer = Range("M2").Value
Trimmer2 = LTrim(Trimmer)
Range("M2").Value = Trimmer2
Trimmer und Trimmer2 sind String Variablen, nur zu diesem Zweck erstellt.
Wäre für eine Antwort sehr dankbar.
Ciao
Jens

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Hhmmmmpffff...
17.01.2006 17:09:12
RolfK
Hallo Jens,
ohne tiefer einzusteigen, müsste es nicht so heissen:
ActiveCell.FormulaR1C1 = "=Right(R[2]C[-10],Len(R[2]C[-10])-SEARCH("","",R[2]C[-10]))"
Oder bin ich hier völlig auf dem Holzweg?
Rolf

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige