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

Problem! Makro bzw. Function per Formel starten

Problem! Makro bzw. Function per Formel starten
26.05.2009 09:45:44
Dennis
Hallo,
ich habe hier ein schier unlösbares Problem...
In A1 steht eine Zahl In B1: =WENN(A1>10;Makrostart();"")
Dann noch folgenden Code in einem Modul:

Function Makrostart()
Call Makro
End Function



Sub Makro()
MsgBox "Test"
End Sub


Wenn man dann eine Zahl >10 in A1 eingibt, wird das Makro korrekt gestartet und die MsgBox erscheint.
Ändere ich den Code des Makros ab: statt MsgBox nehme ich Range("A5")="Test", funktioniert es nicht mehr.
Kann mir das jemand erklären? Ich möchte nämlich mit dieser Methode ein komplexeres Makro starten, aber bekomme ständig #WERT in B1 als Rückgabe.
Gruß Dennis

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem! Makro bzw. Function per Formel starten
26.05.2009 09:49:03
Hajo_Zi
Hallo Dennis,
eine Funktion kann nur einen Wert zurückgeben und keinen Zellinhalt ändern.

AW: Problem! Makro bzw. Function per Formel starten
26.05.2009 09:52:19
Dennis
Hallo Hajo,
danke für die Info! Also gibt es keine Möglichkeit, in einer Formel ein komplexeres Makro zu starten? Ich muss nämlich zwei Werte überwachen und worksheet_change klappt irgendwie nicht... :(
Gruß Dennis
Funktioniert Worksheet_Calculate() ? _oT
26.05.2009 09:55:48
NoNet
_oT = "ohne Text"
AW: Funktioniert Worksheet_Calculate() ? _oT
26.05.2009 10:04:33
Dennis
Hallo NoNet,
leider funktioniert Calc auch nicht... Ich verstehe das nicht. Der Datenimport löst kein change-Ereignis aus und wenn ich eine simple Berechnung durchführe und bei Änderung des Ergebnisses wird auch kein calc-Ereignis ausgelöst. Stark vereinfacht importiere ich zwei Zahlen, addiere sie dann und möchte jedes Mal kontrollieren, ob durch die Addition schon eine 10 erreicht ist. Dann soll ein Makro gestartet werden.
Aber jetzt klappt es nicht mit dem Starten eines Makros aus einer Formel, change und calc als Private Sub funktionieren auch nicht... Bin mit meinem Latein am Ende... :(
Gruß Dennis
Anzeige
Lade die Datei(en) bitte mal hoch _oT
26.05.2009 12:35:28
NoNet
_oT = "ohne Text"
AKTIVE Zelländerung durch FUNCTION nicht möglich
26.05.2009 09:54:44
NoNet
Hallo Dennis,
die MsgBox bewirkt keine aktive Zelländerung, sie wird daher ausgeführt. Aktionen, die eine Änderung an Zellen und m.E. auch an den Tabellenblättern oder der Arbeitsmappe bewirken, werden hingegen nicht ausgeführt, wenn man sie über eine UDF (User defined Function) aufruft - auch wenn man den Umweg über eine weitere SUB-routine wählt. Eine UDF hat letztendlich nur den zwekc einen Wert (oder Wertematrix) an die aufrufende Zelle (=> Caller) zu übergeben und nicht noch "nebenbei" andere zellen zu manipulieren ,-)
Schau Dir auch mal die Beiträge des folgenden Threads an :
https://www.herber.de/forum/archiv/1072to1076/t1075956.htm
Gruß, NoNet
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige