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

Formle via Makro ersetzen

Formle via Makro ersetzen
05.07.2003 15:11:57
Michael H.
Hi Leute,
Ich möchte via VBA-Makro die Formel
=WENN(M2="";"";WENN(M2>17,9;0;KÜRZEN(((75/(M2+0,24))-4,1)/0,00664;0)))
durch die Formel
=WENN(M2="";"";WENN(M2>17,9;0;KÜRZEN(((75/(M2+0,24))-3,998)/0,0066;0)))
ersetzen. Da sich die Formel in jeder Zeile ändert (aus M2 wird in der nächsten Zeile M3, usw.) verwende ich dazu folgenden Code:


For Zeile = "2" To "36"

Cells.Find(What:="=WENN(M" & Zeile & "="";"";WENN(M" & Zeile & _
">17,9;0;KÜRZEN(((75/(M" & Zeile & "+0,24))-4,1)/0,00664;0)))", _
After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlWhole, SearchOrder:= _
xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False) _
.Replace What:= _
"=WENN(M" & Zeile & "="";"";WENN(M" & Zeile & _
">17,9;0;KÜRZEN(((75/(M" & Zeile & "+0,24))-4,1)/0,00664;0)))", _
Replacement:= _
"=WENN(M" & Zeile & "="";"";WENN(M" & Zeile & _
">17,9;0;KÜRZEN(((75/(M" & Zeile & "+0,24))-3,998)/0,0066;0)))", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:= _
False, ReplaceFormat:=False

Next Zeile


Beim Ausführen des Makros kommt jedoch immer der der

Laufzeitfehler '91':
Objektvariable oder With-Block nicht festgelegt.

Wenn ich das Makro aufzeichne und unverändert abspielen will, funktioniert es manchmal, und manchmal nicht, ohne dass ich einen Unterschied im Code erkenne!

Kann mir jemand sagen, was ich falsch mache und wie ich den Fehler vermeiden kann?

Danke für eure Hilfe

Michael

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formle via Makro ersetzen
05.07.2003 21:59:38
andre
hallo michael,
ohne es zu testen würde ich erst mal sagen, dass es mal was findet und mal nicht. prüfe mal, ob die daten, die du suchst, auch (noch) so vorhanden sind.
wenn nicht, dann war es das.
da kannst du eine fehlerbehandlung dazu schreiben:
on error goto errorhandler
cells.find .....
on error goto 0 'schaltet die fehlerbehandlung aus
...
...
'am ende
exit sub
errorhandler:
msgbox "nix gefunden"
end sub
gruss andre


AW: Formle via Makro ersetzen
06.07.2003 10:40:45
Michael H.
Danke für den Tipp, aber die FOrmel existiert tatsächlich (ich hab sie mit manuellem suchen gefunden). Die MsgBox brauche ich auch nicht, denn ich lasse den Code im Einzelschrittmodus laufen, d.h. ich merke sofort wenn und wo der Fehler ist

Michael


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige