Teen kouluun pakollista harjoitustyötä Excelin VBA:lla (en tiedä noita virallisia nimityksiä, toivottavasti ymmärrätte). Ongelmani on nyt sellainen missä opettajani(kaan) ei osaa minua auttaa. Olen tehnyt eräänlaisen tietokilpailun jossa aina liikutaan formilta formille. Aihealueita on kolme ja jokaisessa 10 kysymystä. Kun kaikkiin kysymyksiin on vastattu, formi näyttää montako oikeaa vastausta kilpailija sai. Tämän jälkeen CommandButtonilla päästään formille josta voidaan valita aihealue, jälleen buttonilla. Ongelma -josta siis on tullut aivan ylitsepääsemätön este- on se, että ohjelma menee kerran läpi, mutta jos yritän pelata uudelleen saman aihealueen kysymykset ohjelma kaatuu. Käskyt napissa josta aihealue valitaan on:
form2.show
form1.hide
Antaa ilmoituksen että *form already displayed; can't show modally*.
Täytyy myöntää etten oikein VBA:ta hallitse, mutta nyt olisi pakko. Yritin ehdottaa opettajalle, että jos tuo tarvitsee jonkinnäköisen toistolauseen, johon opettaja sanoi ettei tarvitse. Eipä kuitenkaan itse osannut minua auttaa. Ehkä siksi, että naisia olemme molemmat =D
...mutta siis, olisin todella kiitollinen jos joku minua osaisi ja jaksaisi auttaa.
Yrität todennäköisesti avata form2 useampaan kertaan varmista että sinulla jossain form2.hide.
edit: Tai ehkä form2.unload.
Melkein tekee mieli sanoa että ikävä kyllä löytyy.
Jos joku jaksaisi niin voisiko tehdä excelin VBA:lla vaikka kolme formia, jotka siirtyvät form1->form2->form3->form1... buttonilla ja tuo ympyrä kulkisi niin kauan kun haluaa. Ettei se tekisi siis tuota mitä minun loistava ohjelmani tekee. Ja laittaisi sitten noiden fomien buttonien koodit tänne.
No jos oikein ymmärsin, mitä haet takaa, niin eihän tuo ole homma eikä mikään. Jokaiseen formiin vaan CommandButtoni ja sitten Button proseduuriin kaksi käskyä, joista toinen avaa uuden formin ja toinen sulkee vanhan.
Näin olenkin tehnyt. Mutta tuota formilta formille siirtymistä ei voi suorittaa kuin kerran, toista kertaa saman aihealueen peliä ei voi pelata. Hide ja show -käskyt löytyvät jokaiselle formille.
Oletko yrittänyt Hiden sijasta Unloadata?
Niin, käytä hiden ja shown sijasta loadia ja unloadia.
Mielenkiintoinen ilmiö - Aina kun joku miespuolinen on kysynyt koulutyöhön liittyviä kysymyksiä palstalla on viitattu tiukkaan ohjelmointiputkan sääntöihin koulutöiden suhteen ja apua ei taatusti ole herunut kuin rautakangella, mutta kun nainen kysyy on uljaita ritareita valkoisilla ratsuillaan oikein jonossa auttamassa ja sääntöihin ei viitata vahingossakaan.
:D LOL
T. Ohjelmointiputkan tasa-arvovaltuutettu :D
Aina voi pientä vinkkiä antaa. Tämähän ei ole likikään valmiin koodin tarjontaa. Tytöt ovat selkeänä vähemmistönä joten on luonnollista avittaa heitä hiukka herkemmin. Toivottavasti tyttöjä ilmaantuu enemmänkin näille sivuille.
Antti kirjoitti:
Mielenkiintoinen ilmiö - Aina kun joku miespuolinen on kysynyt koulutyöhön liittyviä kysymyksiä palstalla on viitattu tiukkaan ohjelmointiputkan sääntöihin koulutöiden suhteen ja apua ei taatusti ole herunut kuin rautakangella, mutta kun nainen kysyy on uljaita ritareita valkoisilla ratsuillaan oikein jonossa auttamassa ja sääntöihin ei viitata vahingossakaan.
:D LOLT. Ohjelmointiputkan tasa-arvovaltuutettu :D
No mutta ei tässä sentään mitään valmista ohjelmaa pyydetty :)
Ja mitäs uutta/outoa tuossa mainitsemassasi ilmiössä muka on ;)
En nyt sanoisi, että tyttöjä kohdeltaisiin täällä jotenkin paremmin tms.
Vilkaskaapa tämä https://www.ohjelmointiputka.net/keskustelu/4426-neidolle-apua :)
T.M. kirjoitti:
No mutta ei tässä sentään mitään valmista ohjelmaa pyydetty :)
Ja mitäs uutta/outoa tuossa mainitsemassasi ilmiössä muka on ;)
Joo ei niin pyydetty ei :D
laanni kirjoitti:
Jos joku jaksaisi niin voisiko tehdä excelin VBA:lla vaikka kolme formia, jotka siirtyvät form1->form2->form3->form1... buttonilla ja tuo ympyrä kulkisi niin kauan kun haluaa. Ettei se tekisi siis tuota mitä minun loistava ohjelmani tekee. Ja laittaisi sitten noiden fomien buttonien koodit tänne.
No luonto tikanpojan puuhun ajaa... minun mielestäni autetaan tarvitsevia ja koulutehtävien tapauksessa ei annata suoria koodeja - pelkät periaatteet - niinkuin nyt on toimittu.
Positiivista huomata, että pojat ovat "nörttiydestään" huolimatta viriileitä nuoria (tai vanhoja, kuten setä) :D
Edit: typoja, kuten tavallista...
Pitää itsekinh sanoa, etten noista säännöistä tiedä, ja noviisi sekä tyttö olen... =D eli ehkä on väärin pyytää apua koulun juttuja varten, mutta ehkä 'puolustuksekseni' sanon etä opettaja kehoitti näin tekemään (ei kuitenkaan mitään sääntöjä rikkomaan...) Tyhmyyttäni siis taisin kysäistä. Sori. Ja vielä sen haluan itse kertoa, että ohjelmointi on ihanaa, jostain v*tun syystä vain tuo VBA ei tottele muita ohjelmointikieliä (mielestäni =) ) Moni on epäillyt hulluksi kun meinaan ohjelmoinnin puolelle suuntautua, mutta kai se on salainen perverssio: se kiinnostaa.
Olkoon muut mitä mieltä siis tahansa, ja olkoot säännöt minkälaisia tahansa, olen henk.koht. sitä mieltä, että ajatuksia vaihtamalla (asiassa kuin asiassa) meistä tulee viisaampia. =)
Tällä kirjoituksella en tod halua ketään kritisoida enkä sääntöjä rikkoa, vaan hymyssä suin kertoa että miestä mäessä auttajat ovat ihania. Todellakaan en edes halua mitään valmiita koodeja, vaan oppia paljon uutta. Aina!
Aihe on jo aika vanha, joten et voi enää vastata siihen.