leider konnte ich auf meinen letzten Beitrag nicht mehr antworten (https://www.herber.de/forum/archiv/1432to1436/t1434031.htm).
Mittlerweile bin ich weiter gekommen, habe den Fehler aber noch nicht gefunden.
In meiner Datei sollen in das erste Arbeitsblatt Formeln kopiert werden, die im zweiten Arbeitsblatt stehen.
Bisher wurden dort die Formeln folgendermaßen gespeichert:
@=WENN(ZS(-7)="US-$"; RUNDEN(((ZS(-2)+ZS(-1))/Z2S70);2);RUNDEN(ZS(-2)+ZS(-1);2))@
In VBA wird folgendes gemacht:
For x = startindex To lrow
ActiveWorkbook.Sheets(1).Cells(x, 11).FormulaR1C1 = GenFormulaR1C1(ActiveWorkbook.Sheets(2). _
Cells(2, 5).Value)
Next
Function GenFormulaR1C1(ByVal fString As String)
GenFormulaR1C1 = Mid(fString, 2, Len(fString) - 2)
End Function
Also es wird die Formel um das @ Zeichen abgeschnitten und dann in das erste Arbeitsblatt kopiert.Das funktioniert aber.
Nun funktionieren die Formeln mit dem @-Zeichen in meiner Excel-Version nicht mehr, daher war mein Ansatz die @-Zeichen mit einem ' zu tauschen. Also:
'=WENN(ZS(-7)="US-$"; RUNDEN(((ZS(-2)+ZS(-1))/Z2S70);2);RUNDEN(ZS(-2)+ZS(-1);2))'
Das Problem ist jetzt aber, dass in der Zelle folgender String steht:WENN(ZS(-7)="US-$"; RUNDEN(((ZS(-2)+ZS(-1))/Z2S70);2);RUNDEN(ZS(-2)+ZS(-1);2))
Also das ' = ' fehlt und es wird keine Formel generiert. Meine Ansätze bisher waren einfach ein zweites '=' in die Formel, die kopiert wird aus Blatt 2, zu schreiben und ich habe versucht die mid-Funktion anzupassen. Leider ohne Erfolg.Habt ihr noch Ideen?