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

Forumthread: Aufruf einer UDF, Fehler Objekt erforderlich

Aufruf einer UDF, Fehler Objekt erforderlich
29.03.2007 18:25:00
Christian
Hallo zusammen,
ich habe fogende UDF:

Function New_SumProduct(x As String, y As String) As Variant
Dim strMonat As String
Dim strArt As String
Dim strSumme As String
Application.Volatile
intLastRow = Sheets("Tabelle1").Range("F65536").End(xlUp).Row
strMonat = Application.Caller.Parent.Range("Tabelle1!A5:A" & intLastRow).Address ' contains  _
_
text
strArt = Application.Caller.Parent.Range("Tabelle1!C5:C" & intLastRow).Address ' contains   _
_
text
strSumme = Application.Caller.Parent.Range("Tabelle1!F5:F" & intLastRow).Address  '  _
contains values
New_SumProduct = _
Evaluate("SUMPRODUCT((" & strMonat & "=" & Chr(34) & x & Chr(34) & ")*(" & strArt & "=" &   _
_
Chr(34) & y & Chr(34) & ")*" & strSumme & ")")
End Function

Im Tabellenblatt funktioniert die auch einwandfrei, wenn ich sie aber im VBE mit z.B.
Range("K1") = New_SumProduct("x", "y")
aufrufen will kommt bei der Zeile
strMonat = Application.Caller.Parent.Range("Tabelle1!A5:A" & intLastRow).Address
die Fehlermeldung Laufzeitfehler 424, Objekt erforderlich.
Weiss jemand was ich falsch mache?
Vielen Dank!
Christian
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aufruf einer UDF, Fehler Objekt erforderlich
29.03.2007 18:54:57
Kurt
Hi,
Application.Caller ist die Zelle, aus der die UDF aufgerufen wird.
Hier gibt es keine aufrufende Zelle:
Range("K1") = New_SumProduct("x", "y")
Deine Konstruktion kann so nur als Funktion in einer Zelle funktionieren.
AW: Aufruf einer UDF, Fehler Objekt erforderlich
29.03.2007 19:45:00
Christian
Hi Kurt,
ich habe jetzt mal Apllication.Caller.Parent weggelassen (hatte es mir so gegoogelt) und siehe da es geht:-).
Danke für die Info!
Grüße
Christian
Anzeige
AW: Aufruf einer UDF, Fehler Objekt erforderlich
29.03.2007 19:54:00
Kurt
Hi,
Volatile sollte man nur einsetzen, wenn es nicht anders geht, in deinem Fall nicht nötig.
mfg Kurt
;

Forumthreads zu verwandten Themen

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