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

benutzerdefinierte Funktion verursacht Fehler

benutzerdefinierte Funktion verursacht Fehler
07.04.2009 18:03:06
SteffenS
Hallo Zusammen,
ich habe mir folgende Funktion geschrieben:

Function Farbe(rngColor As Range, intColor As Integer) As Boolean
'Farbe einer Zelle ermitteln
Application.Volatile
If rngColor.Interior.ColorIndex = intColor Then Farbe = True
End Function


Wenn ich diese jetzt in einer Tabelle (andere Mappe) einfüge zum Beispiel:
=WENN('test.xls'!Farbe(AU183;6)=WAHR;AU183;AU184)
so führt diese Funktion in Zusammenhang mit einem Worksheet_Change Ereignis in der Mappe test.xls dazu, dass das Ereignis nicht bis zum Ende ausgeführt wird.
Woran kann dies liegen?
Danke im Voraus.
MFG
Steffen Schmerler

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: benutzerdefinierte Funktion verursacht Fehler
07.04.2009 18:45:56
Luschi
Hallo Steffen,
habe Dein Beispiel mal getestet und es läuft bei mit.
Die Funktion farbe() muß sich in der test.xls natürlich in einem normalen Modul befinden und nicht im Klassenmodul einer Tabelle.
Die Mappe test.xls muß geöffnet sein!!!
Der Aufruf in der andere AM kann auch so erfolgen:
=WENN(test.xls!Farbe(AU183;6);AU183;AU184)
Da die Mappe mit dem Makro geöffnet ist, entfallen die '-Zeichen; diese sind nur erforderlich, wenn, wie beim SVerweis, auf eine geschlossene Mappe zugeriffen wird.
Das =WAHR muß man auch nicht schreiben, da die Funktion ja einen Wahrheitswert liefert und die Wenn-Funktion darauf schon entscheidet, ob der 1. oder der 2. Wert genommen wird.
Deshaln ist kein zusätzlicher Vergleich mit 'WAHR' erforderlich.
Gruß von Luschi
aus klein-Paris
Anzeige
irgendwie muss das an der Funktion liegen
07.04.2009 18:55:22
SteffenS
Ich habe es jetzt mit
'=WENN(Farbe($AU$181;6)=WAHR;N10;P10)
im Blatt mit dem Worksheet_Change Ereignis getestet.
Mache ich eine Eingabe in einer Zelle geht auch.
Lege ich auf diese Zelle eine Gültigkeit (Liste) dann geht es nicht mehr.
Komisch was?
Habt Ihr dazu noch eine Idee?
Danke
MFG
Steffen
AW: benutzerdefinierte Funktion verursacht Fehler
07.04.2009 19:03:53
ede
Hallo Steffen,
schreib mal Deine Funktion in dieser Art:

Function My_Func()
Application.Volatile
' Dein Code
End Function


Gruss

sorry, wer lesen ..
07.04.2009 19:07:15
ede
.. kann ist voll im vorteil
AW: sorry, wer lesen ..
07.04.2009 19:24:29
ede
dann hast Du wahrscheinlich noch eine bedingte Formatierung auf die Zelle!
Gruss
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige