Avatar billede palle_ib Nybegynder
06. februar 2003 - 12:41 Der er 13 kommentarer og
1 løsning

Variabel tilbage fra en Sub()

Er det muligt at få en værdi med tilbage fra en Sub()?
Det er muligt at sende værdier ind i en Sub(byval, byref, mm.) men er det også muligt at få en værdi sendt tilbage?
Avatar billede somaliomar Praktikant
06. februar 2003 - 12:44 #1
Så skal du bruge:
Function() As VariableType
Avatar billede palle_ib Nybegynder
06. februar 2003 - 12:50 #2
Kan alle de samme kald fra en Sub, kaldes fra en Function()?
Avatar billede palle_ib Nybegynder
06. februar 2003 - 12:51 #3
Og i givet fald er forskellen så bare at en function() sender noget tilbage hvor en Sub() kun udfører noget?
Avatar billede jkrons Professor
06. februar 2003 - 13:06 #4
Ja til begge dine spørgsmål. Alle kald fra en sub kan bruges i en Fucntion.

En Sub gør noget - en Function returnerer noget.
Avatar billede somaliomar Praktikant
06. februar 2003 - 13:06 #5
Der er lige lidt der skal ændres når man definere sin kode-blok til at være en funktion. For det første skal du i kode-blokket angive hvilken værdi funktionen skal returner.

En typisk funktion ser sådan ud

Public Function grade(Mark As Integer) As Integer
  grade = Mark * 2
End Function


Når du skal kalde funktionen skriver du:

tmpGrade = grade(41)

Funktionen ganger så Mark (41) med 2 og returnere resultatet som så gemmes i tmpGrade...

Er det forståeligt?
Avatar billede somaliomar Praktikant
06. februar 2003 - 13:06 #6
Skulle være et svar :)
Avatar billede clausn Nybegynder
06. februar 2003 - 13:08 #7
En sub kan ikke bruges til at retunere noget.
Man bruger sub() hvis man ikke skal have retuneret noget - det kunne være en funktion der checkede om en fil eksisterede og hvis den gjorde skulle den bare slette den.

En funktion() bruges hvis du vil returenere et svar (resultat)
Avatar billede jkrons Professor
06. februar 2003 - 13:08 #8
Som somaliomar viser skal du i en Fucntion altid returnere resultatet i en variabel med samme navn som Function'en selv har.
Avatar billede martin_moth Mester
06. februar 2003 - 13:31 #9
riwen & jkrone : Det passer altså ikke helt det I siger - eller så formulerer I jer lidt upræcist ;o) En sub bruges OFTE til at returnere noget, bare ikke i sit navn, som en Function gør!!!

En function returnerer noget i sit navn, der derved indeholder en værdi i sig selv. Og det er forskellen på en Sub og en Function. En Sub returnerer (eventuelt) noget i den eller de variabler, den bliver kaldt med, hvis den da kaldes med parametre...
Avatar billede jkrons Professor
06. februar 2003 - 13:40 #10
martin_moth-> Det har du selvfølgelig ret i, men i modsætning til sub's kan du bruge Functions (eller rettere det de returnerer) i formler.
Avatar billede martin_moth Mester
06. februar 2003 - 15:23 #11
Netop det jeg siger!
Undskyld hvis jeg er en flueknepper - men sæt nu palle ib går rundt og tror, at man ikke få returneret noget som helst fra en sub :o)
Avatar billede jkrons Professor
06. februar 2003 - 15:25 #12
Bøjer mig :-)
Avatar billede somaliomar Praktikant
06. februar 2003 - 16:13 #13
Bøjer mig dybt :D
Avatar billede palle_ib Nybegynder
10. februar 2003 - 12:18 #14
Tak for svaret somaliomar!
Også tak for alle de andre brugbare kommentare!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester