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

Function geht nicht, äquivalente Sub geht

Function geht nicht, äquivalente Sub geht
21.02.2005 10:32:37
Peter
Hallo zusammen,
folgende Funktion:

Public Function vorhaben2005(name As String) As Single
Dim mep As Worksheet, zeile%, summe As Single, j%
Application.Volatile
Set mep = ActiveWorkbook.Sheets("Jan - Dez 2005")
zeile = mep.Range("A18:A300").Find(What:=name).Row + 5
summe = 0
For j = 2 To 53
summe = summe + mep.Cells(zeile, j).Value
Next j
vorhaben2005 = (summe * 100) / 52
End Function

(Wenn der Code etwas umständlich aussieht, liegt es daran, dass ich schon versucht habe, mögliche Fehler auszuschließen).
Das Argument "name" steht in der Nachbarzelle, also z.B. die Funktion in B2 lautet vorhaben2005(A2). Als Rückgabe bekomme ich den Fehler #WERT!
Zum Test habe ich das Ganze auch als Sub geschrieben, gebe den Namen als explizit deklarierte Variable vor und gebe das Ergebnis in einer Messagebox aus:

Public Sub vorhaben()
Dim mep As Worksheet, zeile%, summe As Single, j%
Dim name$, v As Single
Set mep = ActiveWorkbook.Sheets("Jan - Dez 2005")
name = "Mustermann, Karl"
zeile = mep.Range("A18:A300").Find(What:=name).Row + 5
summe = 0
For j = 2 To 53
summe = summe + mep.Cells(zeile, j).Value
Next j
v = (summe * 100) / 52
MsgBox v
End Sub

Damit funktioniert es problemlos. Weiß jemand Rat?
Vielen Dank und Gruß
Peter

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Function geht nicht, äquivalente Sub geht
Viet
Hallo,
in der function hast du name keinen Wert zugewiesen.
Gruss
AW: Function geht nicht, äquivalente Sub geht
WernerB.
Hallo Peter,
Dein Problem ist für mich nicht nachvollziehbar.
Bei menem Versuchsaufbau liefern Function und Makro das selbe (erwartete) Ergebnis.
Vielleicht liegt Dein Fehler im Aufruf der Function?
Gruß
WernerB.
AW: Function geht nicht, äquivalente Sub geht
Fred
Find funktioniert in E 2000 nicht in Functions!
Fred
AW: Function geht nicht, äquivalente Sub geht
23.02.2005 11:59:19
Peter
Hallo an alle Antworter,
falls es jetzt noch jemand liest: Entschuldigung, dass ich nicht geantwortet habe, die Benachrichtigung per mail, dass Antworten von euch da sind, hat offensichtlich nicht funktioniert.
Zum Problem:
Fred hat wohl Recht, ich hatte inzwischen durch Testen auch gefunden, dass die Find-Methode der Übeltäter ist.
Danke an alle und Gruß
Peter
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige