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

Formel via VBA ergänzen/ändern

Formel via VBA ergänzen/ändern
15.03.2016 10:31:56
Ni
Hallo alle beisammen,
ich habe ein Problem an dem ich mir schon seit mehreren Std. den Kopf zerbreche...
Ich möchte gerne eine Formel aus einer Zelle mittels einer Textbox1 ändern.
Die Formel der Zelle lautet:
=WENN(Sheet1!A4="0074";Sheet1!A4;"")
Die Nummer 0074 ist variabel und daher möchte ich sie mit einer TextBox1 ändern können.
Ich habe auch schon bereits eine Formel präpariert, doch funktioniert sie leider noch nicht :(
Hier mein Versuch:

Private Sub CommandButton1_Click()
ThisWorkbook.Worksheets("Tabelle1").Range("A2").Value = "=(WENN(Sheet1!A3=" &
TextBox1.Value & "Sheet1!A3""""))"
End Sub

Jetzt erscheint die Fehlermeldung: Anwendungs- oder objektdefinierter Fehler
Wenn ich nur schreibe: ThisWorkbook.Worksheets("Tabelle1").Range("A2").Value =TextBox1.Value & "Sheet1!A3""""))"
dann schreibt er mir das in die Zelle: "0025"Sheet1!A3"")) , nur fehlt dann ja der erste Teil der Formel...
Kann mir jemand weiterhelfen?

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel via VBA ergänzen/ändern
15.03.2016 10:53:28
ChrisL
Hi Ni
Range().Formula oder Range().FormulaLocal
anstelle von Value
Andere Möglichkeit, du schreibst den Textbox-Inhalt in eine Zelle und greifst mittels INDIREKT() Formel darauf zu.
cu
Chris

AW: Formel via VBA ergänzen/ändern
15.03.2016 11:11:47
Ni
Ok, mein Code schaut jetzt so aus:
ThisWorkbook.Worksheets("Tabelle1").Range("A2").FormulaLocal = "=(WENN(Sheet1!A3=" & TextBox1.FormulaLocal & "Sheet1!A3""""))"
Die Fehlermeldung kommt leider immer noch.

AW: Formel via VBA ergänzen/ändern
15.03.2016 11:16:09
ChrisL
Bei der Textbox ist Value OK, da habe ich mich falsch ausgedrückt

AW: Formel via VBA ergänzen/ändern
15.03.2016 11:24:30
Ni
Habe ich auch schon mal ausprobiert, da kommt immer noch die selbe Fehlermeldung.
Anwendungs- oder objektdefinierter Fehler

Anzeige
AW: Formel via VBA ergänzen/ändern
15.03.2016 11:25:44
UweD
lad doch mal Musterdatei hoch

AW: Formel via VBA ergänzen/ändern
15.03.2016 10:56:32
UweD
Hallo
so...

Private Sub CommandButton1_Click()
ThisWorkbook.Worksheets("Sheet1").Range("A1").FormulaLocal = _
"=WENN(Sheet1!A4=""" & TextBox1.Value & """;Sheet1!A4;"""")"
End Sub
Gruß UweD

AW: Formel via VBA ergänzen/ändern
15.03.2016 11:16:03
Ni
Da kommt leider immer noch die gleiche Fehlermeldung.
Aber schon mal vielen Dank für deine Bemühungen!!
Viele Grüße
Ni

AW: Formel via VBA ergänzen/ändern
15.03.2016 11:22:41
UweD
Nachfrage:
Du hattest in deiner Formel Tabelle1 und Sheet1 verwendet; ist das so gewollt?
Existieren beide Blätter?
dann so...
Private Sub CommandButton1_Click()
ThisWorkbook.Worksheets("Tabelle1").Range("A1").FormulaLocal = _
"=WENN(Sheet1!A4=""" & TextBox1.Value & """;Sheet1!A4;"""")"
End Sub
Gruß UweD

Anzeige
AW: Formel via VBA ergänzen/ändern
15.03.2016 11:32:18
Ni
Ja, das ist so gewollt.
In Sheet1 befinden sich Daten, auf die die Formel: =WENN(Sheet1!A3="0074";Sheet1!A3;"") in Tabelle1, Spalte A2 zugreift.
In dieser Formel möchte ich nur die "0074" über eine TextBox ändern, die ich bereits am laufen habe.
Habe deinen Vorschlag gerade ausprobiert, es erscheint leider immer noch die selbe Fehlermeldung.
Wenn ich nur den Teil TextBox1.Value & """;Sheet1!A4;"""")" einsetze, läuft das, mit dem Teil davor nicht...sehr seltsam :(

AW: Formel via VBA ergänzen/ändern
15.03.2016 12:46:17
UweD
da hilft dann nur noch eine Musterdatei

AW: Formel via VBA ergänzen/ändern
15.03.2016 13:29:17
Ni
Die Dateien sind leider alle zu groß.

Anzeige
AW: Formel via VBA ergänzen/ändern
15.03.2016 13:43:41
ChrisL
dann musst du abspecken und ein vereinfachtes Beispiel erstellen. Ist lästig ich weiss...
Ein letzter Versuch zum Rätselraten...
Weil du von mehreren Dateien sprichst. Referenziert die Formel auf eine andere Datei?
Weil du von Tabellennamen "Sheet" sprichst, vielleicht doch eher die sprachunabhängige Version:
Private Sub CommandButton1_Click()
ThisWorkbook.Worksheets("Tabelle1").Range("A1").Formula = _
"=IF(Sheet1!A4=""" & TextBox1.Value & """,Sheet1!A4,"""")"
End Sub

AW: Formel via VBA ergänzen/ändern
15.03.2016 14:46:16
Ni
Die erste Tabelle heißt bei mir Sheet1, die zweite Tabelle ist bei mir die Tabelle1.
Ich hab also die erste Tabelle umbenannt in Sheet1 und die zweite Tabelle in Tabelle1.
Etwas unglücklich von mir formuliert, sorry!
Ich werde deinen Vorschlag noch mal versuchen!
Vielen Dank schon mal für deinen Support!!

Anzeige
AW: Formel via VBA ergänzen/ändern
15.03.2016 13:30:29
Werner
Hallo,
ich würde mal sagen, dass da ein Satz Gänsefüsschen fehlen
ThisWorkbook.Worksheets("Tabelle1").Range("A2").FormulaLocal = "=(WENN(Sheet1!A3="" & TextBox1.Value & ""Sheet1!A3""""))"
Gruß Werner

AW: Formel via VBA ergänzen/ändern
17.03.2016 09:36:59
Ni
Leider ist das Problem immer noch nicht behoben :(
Immer noch die selbe Fehlermeldung die erscheint.

AW: Formel via VBA ergänzen/ändern
17.03.2016 09:55:32
Ni
Ok, ich weiß jetzt woran es liegt, hab dafür aber noch keine Lösung gefunden...
In dem Code:
ThisWorkbook.Worksheets("Tabelle2").Range("A2").FormulaLocal = "=(WENN(Tabelle1!A3=" & TextBox1.Value & ";Tabelle1!A4;"")"
stört ihm das fettgeschriebene Gleichheitszeichen.
Wenn ich das weglasse, schreibt er mir den Ausdruck in die Zelle, mit dem Gleichheitszeichen kommt die Fehlermeldung.
Hat jmd. eine Ahnung, wie ich den Fehler beheben kann?

Anzeige
AW: Formel via VBA ergänzen/ändern
17.03.2016 09:57:39
Ni
Ok, es wurde komischerweise nicht fett markiert...
es ist dieses:
ThisWorkbook.Worksheets("Tabelle2").Range("A2").FormulaLocal = "=
letzte Gleichheitszeichen.
Sorry für diese Verwirrung!

AW: Formel via VBA ergänzen/ändern
17.03.2016 10:25:07
UweD
es liegt nicht an dem Gleichheitszeichen, sondern an dem Rest dahinter.
müsste so sein:
ThisWorkbook.Worksheets("Tabelle2").Range("A2").FormulaLocal = _
"=WENN(Tabelle1!A3=" & TextBox1.Value & ";Tabelle1!A4;"""")"

Gruß UweD

AW: Formel via VBA ergänzen/ändern
17.03.2016 12:27:29
Ni
Suuuper es funktioniert!!
Vielen DANK!!

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige