Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1516to1520
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

Zellinhalt als Formel umwandeln

Zellinhalt als Formel umwandeln
29.09.2016 06:11:11
Ralf
Hallo Forum,
ich ermittle mit einer VBA Zielwertsuche eine Zahl. Diese steht in der Zelle M36.
Jetzt soll diese Zahl in die Zelle D33 kopiert und als folgende Formel dargestellt werden: =*0,85 und das ganze in folgendem Zahlenformat: +#.##0,00 "€/Stck.";[Rot]-#.##0,00 "€/Stck."
Kann mich bei diesem Schritt bitte jemand unterstützen?
Vielen Dank im Voraus.
Viele Grüße
Ralf

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellinhalt als Formel umwandeln
29.09.2016 09:16:32
ransi
Hallo Ralf,
Versuch mal so:
Option Explicit

Sub machs()
With Sheets("Tabelle1").Range("D33")
    .NumberFormatLocal = "+#.##0,00 ""€/Stck."";[Rot]-#.##0,00 ""€/Stck."""
    .Value = Range("M36") * 0.85
End With
End Sub



ransi
Anzeige
AW: Zellinhalt als Formel umwandeln
30.09.2016 06:09:44
Ralf
Hallo Ransi,
vielen Dank für die Rückmeldung.
Das Ergebnis passt. Ich möchte jedoch nicht das Formelergebnis in die Zelle D33 kopieren, sondern direkt die Formel in die Zelle schreiben.
Also dann so "= * 0,85
Vielen Dank im Voraus für eine Rückmeldung.
Viele Grüße
Ralf
AW: Zellinhalt als Formel umwandeln
30.09.2016 06:10:38
Ralf
Hallo Ransi,
vielen Dank für die Rückmeldung.
Das Ergebnis passt. Ich möchte jedoch nicht das Formelergebnis in die Zelle D33 kopieren, sondern direkt die Formel in die Zelle schreiben.
Also dann so "=(Zellwert M36) * 0,85"
Vielen Dank im Voraus für eine Rückmeldung.
Viele Grüße
Ralf
Anzeige
mit FormulaLocal ...
30.09.2016 08:13:00
Matthias
Hallo
With Sheets("Tabelle1").Range("D33")
.NumberFormatLocal = "+#.##0,00 ""€/Stck."";[Rot]-#.##0,00 ""€/Stck."""
.FormulaLocal = "=M36*0,85"
End With
Gruß Matthias
AW: mit FormulaLocal ...
30.09.2016 10:45:47
Ralf
Hallo Mathias,
die Zelle M36 ist nur temporär vorhanden und wird nach Durchlauf des Codes gelöscht, was Du natürlich nicht wissen konntest. Daher ist ein Zellbezug auf die Zelle M36 nicht der richtige Weg. Vielleicht habe ich mich auch nicht ganz glücklich ausgedrückt.
Es soll eine Formel mit dem Zellwert aus M36 kreiert werden. Also z. B. =12,3567*0,85 oder = 13,459*0,85 oder oder oder
Viele Grüße
Ralf
Anzeige
AW: mit FormulaLocal ...
30.09.2016 11:03:55
UweD
Hallo nochmal
Kann es sein, das du einen Blattschutz gesetzt hast?
dann musst du evtl. die Zelle D33 freigeben.
LG UweD
AW: mit FormulaLocal ...
30.09.2016 12:51:56
Ralf
Nee, Blattschutz ist keiner vorhanden.
Gruß
Ralf
dann Musterdatei bitte
30.09.2016 14:03:31
UweD
@Uwe - Dein Vorschlag funktioniert ...
01.10.2016 10:39:54
Matthias
Hallo Uwe,
hatte Deinen Vorschlag erst nicht getestet da Ralf schrieb es erzeugt einen Fehler.
Das ist nicht richtig. Es wird die Formel korrekt in die Zelle geschrieben
Dein Vorschlag funktioniert also.
Gruß Matthias
dann nimm einfach den Zellwert ...
01.10.2016 08:35:18
Matthias
Hallo
Dann nimm nicht den Zellbezug, sondern deren Inhalt
With Sheets("Tabelle1").Range("D33")
.NumberFormatLocal = "+#.##0,00 ""€/Stck."";[Rot]-#.##0,00 ""€/Stck."""
.FormulaLocal = "=" & Range("M36").Value & "*0,85"
End With

Es darf natürlich kein Text in M36 stehen, sonst müsste noch eine Fehlerbehandlung
oder eine Umwandlung bei Textzahlen mit rein.
als Bsp. beit Textzahl:
.FormulaLocal = "=" & CDbl(Range("M36").Value) & "*0,85"
Gruß Matthias
Anzeige
AW: dann nimm einfach den Zellwert ...
04.10.2016 06:07:09
Ralf
Hallo Mathias L,
jetzt funktioniert alles wie gewünscht.
Vielen Dank auch an die anderen Beiteiligten für die Unterstützung.
Viele Grüße
Ralf
AW: Zellinhalt als Formel umwandeln
30.09.2016 08:52:32
UweD
Wie schon von mir angegeben so.
Sub sdsds()
With ActiveSheet.Range("D33")
.NumberFormat = "+#,##0.00 ""€/Stck."";[Red]-#,##0.00 ""€/Stck."""
.Formula = "=" & ActiveSheet.Range("M36") & "* 0.85"
End With
End Sub

AW: Zellinhalt als Formel umwandeln
30.09.2016 10:42:58
Ralf
Hallo UweD,
bei der Zeile
.Formula = "=" & ActiveSheet.Range("M36") & "* 0.85"
meckert Excel mit einem "Laufzeitfehler 1004 Anwendungs- oder objektdefinierter Fehler".
Kannst Du nochmal unterstützen?
Viele Grüße
Ralf
Anzeige
AW: Zellinhalt als Formel umwandeln
29.09.2016 09:50:16
UweD
Hallo
als Formel.. mit Konstanten macht das eigendlich keinen Sinn..
geht natürlich..

Sub sdsds()
With ActiveSheet.Range("D33")
.NumberFormat = "+#,##0.00 ""€/Stck."";[Red]-#,##0.00 ""€/Stck."""
.Formula = "=" & ActiveSheet.Range("M36") & "* 0.85"
End With
End Sub
LG UweD

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige