Thema Datum  Von Nutzer Rating
Antwort
Rot Functionaufruf in Zelle liefert "#Name?"
07.11.2012 10:20:49 Andy
NotSolved
07.11.2012 11:29:51 Gast66199
Solved

Ansicht des Beitrags:
Von:
Andy
Datum:
07.11.2012 10:20:49
Views:
1345
Rating: Antwort:
  Ja
Thema:
Functionaufruf in Zelle liefert "#Name?"

Hallo zusammen,

bin völliger VBA-Neuling und habe mich durch googlen bis hierhin durchgehangelt. Ich möchte eine Funktion schreiben, die mir den Mittelwert eines Zellbereichs liefert, der bestimmten Kriterien entspricht. Wenn ich die Funktion im Debugging-Mode durchlaufe funktioniert alles prima und der richtig berechnete Wert steht in der Variable "OpenLoop". Wenn ich die Funktion in eine Zelle schreibe (also =OpenLoop()) bekomme ich den Fehler #Name?. Kann mir jemand helfen???

Danke schonmal

 

Public Function OpenLoop() As Double

  Dim wks As Worksheet
  Dim myRange As Range
  Dim Min As Double
  Dim Zelle As Range, ZeileStart As Variant, ZeileEnd As Variant
  Set wks = ActiveSheet
  
With wks
    'gesuchtes minimum in Spalte 2 (B) ab Zeile 3 suchen
    Set myRange = .Range(.Cells(28, 2), .Cells(.Rows.Count, 2).End(xlUp))
    Min = Application.WorksheetFunction.Min(myRange)
    'Zeile des Minimums im Bereich
    Zeile = Application.WorksheetFunction.Match(Min, myRange, 0)
    'Zelle mit Minimum
    Set Zelle = myRange.Range("A1").Offset(Zeile - 1, 0)
    ZeileStart = Zelle.Row
    'Endzeile festlegen
    ZeileEnd = ZeileStart + 1
    'Ermittlung der letzten Zeile, die das Kriterium erfüllt
    While .Cells(ZeileEnd, 2) > -0.1
        ZeileEnd = ZeileEnd + 1
    Wend
    'Um eines dekrementieren, da vor Start der Schleife bereits um eines inkrementiert wurde
    ZeileEnd = ZeileEnd - 1
    'Ermittlung Mittelwert
    OpenLoop = Application.WorksheetFunction.Average(.Range(.Cells(ZeileStart, 3), .Cells(ZeileEnd, 3)))
    
End With

End Function

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Functionaufruf in Zelle liefert "#Name?"
07.11.2012 10:20:49 Andy
NotSolved
07.11.2012 11:29:51 Gast66199
Solved