Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Visual Basic - odovzdávanie argumentov hodnotou

Ahoj, prosím o poradenie, čo robím zle:

volám procedúru Zobraz, pričom do nej odovzdávam hodnotu "Bratislava":

Sub Pokus()
Zobraz ("Bratislava")
End Sub

hodnotu "Bratislava" preberám do procedúry Zobraz ako premennú Mesto:

Sub Zobraz(Mesto)
MsgBox Mesto
End Sub

Zatiaľ to ide, ale keď chcem odovzdať dve hodnoty, pripravím procedúru Zobraz nasledovne:

Sub Zobraz(Mesto1, Mesto2)
MsgBox Mesto1
MsgBox Mesto2
End Sub

ale pri volaní:

Sub Pokus()
Zobraz ("Bratislava", "Košice")
End Sub

mi Visual Basic označí riadok Zobraz ("Bratislava", "Košice") červenou sa dá hlášku : Compile Error, Expected: =

pričom nechápem, kde sa očakáva "=" a čím ďalej doplniť, keďže pri jednom argumente poslúchal bez odvrávania ;)

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
VBA nepodporuje overloading funkcí v takové podobě, jaká je známá u pokročilejších jazyků. Nicméně n…
Wikan 25.03.2015 10:00
Wikan
ďakujem, niečo som z toho, čo som pochopil dedukciou, odskúšal, zatiaľ bezvýsledne, ale nejde mi do…
robert13 25.03.2015 10:29
robert13
Více argumentů funguje. Nefunguje, když tam máš více stejně pojmenovaných funkcí.
Wikan 25.03.2015 10:30
Wikan
::) ale ja nemám viac rovnako pomenovaných funkcií...
robert13 25.03.2015 10:32
robert13
OK, z toho tvého popisu to tak ale vypadalo. Zkus to volat takhle: Zobraz "Bratislava", "Košice"
Wikan 25.03.2015 10:36
Wikan
Jupííííí, máš pusu na čelo!!! Tak to sa divím... predávané hodnoty sa nevymenovávajú v zátvorkách?!?…
robert13 25.03.2015 10:51
robert13
Díky moc klucí, trápilo mě to dlouho a úplně náhodou jsem narazil na vaše příspěvky. Taky jsem nevě… poslední
fabin 01.07.2016 13:52
fabin

ďakujem, niečo som z toho, čo som pochopil dedukciou, odskúšal, zatiaľ bezvýsledne, ale nejde mi do hlavy, prečo by nemalo fungovať odovzdávanie viacerých argumentov... Stále sa mi zdá, že na základe voľakedy čítaného (bohvie kde) by to malo ísť a či nie je len problém v syntaxe...

Zpět do poradny Odpovědět na původní otázku Nahoru