an Excel bestehenden Function, Argumente übergeben

Bild

Betrifft: an Excel bestehenden Function, Argumente übergeben
von: RazZ
Geschrieben am: 27.11.2003 21:57:54

Hallo,

Betreff

nun ich denk echt nicht das des so schwierig sein kann ....
Meine Frage lautet so :

"wie kann ich einer in Excel bestehenden Function, Argumente von MEINER eigenen


Function übergeben ?" 
.. Thats all Folk's !
Public 

Function VRUNDEN(Zahl, Vielfaches)
   VRUNDEN = Application.WorksheetFunction.mROUND(Zahl, Vielfaches)
End Function

Bild


Betrifft: AW: an Excel bestehenden Function, Argumente übergeben
von: Nepumuk
Geschrieben am: 27.11.2003 23:34:09

Hallo ??????????,
MROUND ist nicht Bestandteil des Application - Objekts. Du kannst es nur wie eine normale Funktion ansprechen. Dazu benötigst du zusätzlich in der Mappe einen Verweis auf:

atpvbaen.xls

dann kannst du es folgendermaßen verwenden:


Sub test()
    Dim x As Variant
    x = mround(10, 3)
End Sub


Number (10 im Beispiel) und Multiple (3 im Beispiel) werden as Variant übergeben. Der Rückgabewert ist ein Variant. Das Programm zur Berechnung befindet sich in: ANALYS32.XLL
Noch Frage?
Gruß
Nepumuk
P.S. Hast du auch einen richtigen Namen? Also einen der nicht an Rattus norvegicus erinnert?


Bild


Betrifft: AW: an Excel bestehenden Function, Argumente übergeben
von: RazZ de Can
Geschrieben am: 30.11.2003 21:34:52

Hi Nepumuk,

Vielen Danke für Den kompetenten Beitrag.

nun eine frage hätte ich schon noch, wie soll dieser
Versweis auf "atpvbaen.xls" aussehen ? diese XLS Datei sagt mir nichts

(im gegensatz zu 'ANALYS32.XLL' die man über die ADDINS aktivieren muss
damit die Function MROUND angesprochen werden kann.)

nun wenn man genau wüsste wie die MROUND Function im 'inneren' aussehen würde
könnte man auf all die verweise verzichten oder ?
(dies währe in diesem Sinne die Lösungs-Variante 2)

Gruß & thnx from
'RazZ de Can'

... 'Rattus norvegicus' der war gut :-))


Bild


Betrifft: AW: an Excel bestehenden Function, Argumente übergeben
von: Nepumuk
Geschrieben am: 30.11.2003 22:47:49

Hallo RazZ,

einen Verweis auf ATPVBAEN.XLA kannst du unter Extras - Verweise setzen. Aber mir ist gerade noch eine andere Möglichkeit eingefallen. Dazu muss allerdings das AddIn geladen sein.

Option Explicit
Sub test()
    Dim x As Variant
    x = Application.Run("ATPVBAEN.XLA!mround", 10, 3)
End Sub


Code eingefügt mit: Excel Code Jeanie

Gruß
Nepumuk


Bild


Betrifft: AW: an Excel bestehenden Function, Argumente übergeben
von: Razz de Can
Geschrieben am: 01.12.2003 10:37:07

Hi Nepumuk,

nun habe das ganze versucht in eine eigen Funktion zu verpacken, klappt aber nicht zufriedenstellend ( Fehler = "#WERT!")
Ich denke das dies die bessere variante, gegenüber einer 'SUB' ist, da ich so auch Argumente übergeben kann oder.

Public

Function vRUNDEN(Zahl As Variant, Vielfaches As Variant) As Variant
  vRUNDEN = Application.Run("ATPVBAEN.XLA!mround", Zahl, Vielfaches)
End Function


was Denkst Du ?


PS: .. ich habe die 'Function' in als 'XLA' abgespeichert und lade das ganze als eigenes AddInn, nun hat das einen Einfluss auf das Ergebniss ??


Gruß & thnx
'RazZ de Can'


Bild

Beiträge aus den Excel-Beispielen zum Thema " an Excel bestehenden Function, Argumente übergeben"