Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Formel in eine Zelle per VBA

Formel in eine Zelle per VBA
Bernd

Hallo liebe Excelisten,
ich möchte per VBA eine Formel in eine Zelle schreiben.
In der Formel sollen die Bereiche C [Column] variabel sein.
Sobald ich aber die Variable Test verändere und für R6 und R8 eine Variable einsetz kommt
eine Fehlermedung: "Laufzeitfehler 1004, Anwendungs oder Objektdefinierter Fehler"
Sub FreiePlaetze_berechnen()
Dim durchlauf As Integer
Worksheets("Gesamtübersicht").Select
durchlauf = 5
Do While Cells(durchlauf, 1)  ""
durchlauf = durchlauf + 1
trainings_id = Cells(durchlauf, 2)
Do While Cells(durchlauf, 2) = trainings_id
durchlauf = durchlauf + 1
'Festwert funktioniert
test = ActiveCell.FormulaR1C1 = "=RC[4]-(COUNTA(R6C16:R8C16))"
'Variabel bringt Fehler
'test = ActiveCell.FormulaR1C1 = "=RC[4]-(COUNTA(R6C"  & durchlauf & ":R8C" & durchlauf &  _
"))"
Cells(durchlauf, 5).FormulaR1C1 = test
Loop
Loop
End Sub
Hat jemand eine Lösung?
Viele Grüße
Bernd
Anzeige
damit schreibst du aber ...
20.05.2010 14:27:58
Rudi
Hallo,
... keine Formel in eine Zelle, sondern prüfst, ob eine bestimmte Formel in einer Zelle steht und schreibst das Prüfungsergebnis in eine Zelle.
test = ActiveCell.FormulaR1C1 = "=RC[4]-(COUNTA(R6C16:R8C16))"
test ergibt Wahr oder Falsch.
Gruß
Rudi
AW: damit schreibst du aber ...
20.05.2010 14:38:18
Bernd
stimmt du hast recht...!
das "test =" muss jeweils weg, das war noch aus einer anderen Version von meinen Versuchen.
Aber auch dann geht's nicht
Anzeige
der Fehler muss
20.05.2010 14:51:43
Rudi
Hallo,
woanders liegen.
Sub tt()
Const durchlauf = 5
ActiveCell.FormulaR1C1 = "=RC[4]-(COUNTA(R6C" & durchlauf & ":R8C" & durchlauf & "))"
End Sub

funktioniert.
Gruß
Rudi
AW: der Fehler muss
20.05.2010 14:55:43
Felix
Hallo,
welchen Wert hat durchlauf, wenn der Fehler kommt?
Gruß,
Felix
Anzeige
AW: der Fehler muss
20.05.2010 15:04:19
Bernd
der Fehler kommt gleich beim ersten Mal,
habe jetzt herausbekommen, dass es so bei mir funktioniert. Warum kann ich nicht erklären aber es geht
von = Trim(Str(von))
bis = Trim(Str(von))
Cells(durchlauf, 5) = "=I" & durchlauf & "-(COUNTA($P$" & von & ":$P$" & bis & "))"
vielen DANK für Eure Hilfe
Anzeige
AW: der Fehler muss
20.05.2010 15:07:26
Felix
Hallo,
Du hattest vorher in Deiner Formel mit jeder Zeile, die Du weiter nach unten gehst die Spalten, in denen gezählt werden soll. Wenn das auf größer 255 läuft, erscheint der Fehler.
Jetzt erhöhst Du die Zeilen (was Du wahrscheinlich von anfang an wolltest ...)
Gruß, Felix
AW: der Fehler muss
21.05.2010 07:31:21
Bernd
Ja, genau das war's.
Man schaut ewig auf eine Zeile und findet den Wald vor lauter Bäumen nicht.
Vielen Dank noch mal.
Anzeige
AW: der Fehler muss
20.05.2010 15:00:59
Bernd
...wenn das bei Dir läuft, dann muss ich noch einmal bei mir schauen
Vielen Dank

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige