Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
952to956
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
952to956
952to956
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

function oder sub

function oder sub
22.02.2008 16:00:00
chris
Hallo VBAler,
habe mal eine blöde frage.
Der Unterschied zwischen functionen und subs ist ja soweit ich weiß das eine

Function etwas zurück gibt und ein 

Sub nicht.
Warum gibt es subs überhaupt ?
Ich kann ja dann in jedem Makro schreiben z.b


Sub test()
call test
'usw...
call test2
End Sub


und anstatt das die 2 (test und test2 sups sind also


Sub test()
und 

Sub test2()
könnten es doch auch functionen sein wie z.b


Function test
und


Function test2
oder wo liegt der genaue unterschied.
Habe bisher immer subs verwendet für Unterprogramme und keine functionen.
Danke für eure Antworten gruß Chris

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

Betreff
Datum
Anwender
Anzeige
AW: function oder sub
22.02.2008 16:06:00
mumpel
Hallo!
Funktionen sollen Berechnungen durchführen, siehe auch eingebaute Funktionen. Makros (Sub) sind kleine Programme, welche immer wiederkehrende Aktionen ausführen sollen.
Gruß, Rene

AW: function oder sub
22.02.2008 16:11:00
Renee
Hi Chris,
Wie du schon sagst, eine Function gibt einen Wert zurück. Vom Prinzip her ist jede Formel eine Funktion.
Wohin sollen denn in deinem Fall die Function test1 ihre Werte zurückgeben ? Ins Nirwana? Also müsste dann mindestens Variable = test1 stehen, wenn test1 eine Function wäre.
Im Übrigen gibt es Wikipedia/Google neben Herber.de ;-)
GreetZ Renée
ich würde mich nie getrauen mich als VBA gut zu klassifizieren, wenn mir das Basiswissen fehlt!

Anzeige
AW: function oder sub
23.02.2008 10:40:00
Volti
Hallo Renee,
im Prinzip hast Du recht, dass standardmäßig bei Funktionen ein Rückgabewert übergeben und durch Code wie Rückgabe=Blabla(parameter) auch zur Weiterverarbeitung erwartet wird.
Allerdings können Funktionen bei den meisten oder allen? Programmiersprachen auch ohne Rückgabe verwendet werden und geschrieben werden.
Blabla Parameter
Windows selbst bietet einige hundert Funktionen und nur deutlich weniger Subs in seiner API. Ob Subs durch die interne Struktur vielleicht schneller sind oder ob es einfach nur eine Festlegung aus früheren Zeiten ist............. Eine interessante Fragestellung.
Habe mir aber eigentlich noch nie 'nen Kopp darüber gemacht.
Gruß
KH

Anzeige
AW: function oder sub
23.02.2008 13:54:42
Renee
Hi Karl-Heinz,
Funktion und Subroutine sind eigentlich nicht klar definiert. Ob allerdings eine Funktion (in meinem Verständnis) ohne Rückgabewert einen Sinn macht, bezweifle ich. Wenn du Methoden, die auf Objekte anwendest und diese als Funktion bezeichnest, könnte frau/mann das noch akzeptieren. Eine grosser Vorteil von Funktionen gegenüber Subroutinen ist, das diese implozit geschachtelt werden können (so wie Formeln mit Klammerausdrücken), was mit Subroutinen nicht möglich ist. Das Subroutinen schneller als Funktionen sein sollten, finde ich auch nicht. Eher umgekehrt: Da Funktionen (meist) aus sehr kleinen Codeblöcken bestehen, sind diese in vielen Runtime-Umgebungen memory-resident verfügbar, wogegen Subroutinen eher geladen/entladen werden. Ich denke hier v.a. an Umgebungen wie DBMS-(Betriebssysteme) in denen z.B. SQL-Befehle interpretiert werden, aber implizit beliebig Funktionen (z.B. Typen-Wandlungen, Formatierunge, Character-Manipulationen, aritmetische Manipulationen etc.) enthalten können.
GreetZ Renèe

Anzeige
AW: function oder sub
23.02.2008 23:59:00
chris
Danke euch beiden für eure unterhaltung.
Verstehe zwar nicht viel aber das reicht denke ich schon was ich mitbekomme...
Ich weiß das ich weiterhin meine subs verwenden werde wenn ich unterprogramme schreibe und functionen wenn ich einen rückgabe wert benötige.
Danke

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige