Täällä vasta-alkaja pähkäilee... Pitäisi saada userboxiin koodi, jolla tyhjentää lomakkeen, toinen millä sulkee sen kokonaan ja sitten vielä koodi, millä userformi aukeaa automaattisesti, mieluiten sheet2:lle. Sen verran oon pähkäillyt, että kun rakentelen userformia, oikeella klikkauksella pääsen sen nappulan koodiin, mutta vaikka löysin ohjeita netistä, ei toimi. on vissiin pilkut ja pisteet sekaisin jossain.. ja minne se userformin avaava koodi laitetaan? Anteeksi tyhmyyteni.
VBA ja userformi
ellanen
5217
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 5
Vanhimmat
...kysymyksesi koskee MS Exceliä? Jos nyt aluksi muotoilisit kysymyksesi ymmärrettään muotoon, niin katsotaan sitten.
Kyseessä siis excel ja siinä oleva UserForm. Anteeksi ylimalkaisuuteni, mutta olen rustannut sitä jo päiviä , enkä saa toimimaan ja alkaa pää ja silmät harittaa;)
>Pitäisi saada userboxiin koodi<
Mikähän Excel-versio sinulla on. Minun versioni ei tunne "userbox"- objektia.
>userformi aukeaa automaattisesti, mieluiten sheet2:lle<
Minun versiollani userform:a ei saa laskentataulukolle, se aukeaa aina omana ikkunana.
Olisikohan sinulla käsitteet pikkuisen sekaisin. Tarkenna ja aseta kysymys uudelleen, sitten neuvon mielelläni.
Kyseessä siis XP Office, mutta on tämä toiminut jopa aiemmissa versioissakin...
Excel työkirja , jossa olen Visual Basicin editorin kautta luonut Formin Nimeltään UserForm1.
Se siis pitäisi saada aukeamaan kun työkirja avataan ja mieluummin tietty vasta kun sheet1 aktivoituu. Siihen pitäisi sitten saada nappuloita, joista yksi sulkee userFormin, yksi tyhjentää mahdolliset käyttäjän tekemät sepustukset tekstboxeista...
Kiitti, kun viitsit auttaa:)
>Se siis pitäisi saada aukeamaan kun työkirja avataan ja mieluummin tietty vasta kun sheet1 aktivoituu. <
Liitä laskentataulukon sheet1 aktivointitapahtumaan: UserForm1.Show
Tapahtumat saat automaattisesti kun valitset VBA-editorissa ko. laskentataulukon ja valitset ylhäältä Worksheet ja sen vierestä Activate.
Koodi olisi siis tällainen:
Private Sub Worksheet_Activate()
userform1.Show
End Sub
>Siihen pitäisi sitten saada nappuloita, joista yksi sulkee userFormin, yksi tyhjentää mahdolliset käyttäjän tekemät sepustukset tekstboxeista...
Kiitti, kun viitsit auttaa:) <
Raahaa työkaluryhmästä formiin commandbutton, valitse se hiiren oikealla korvalla ja valitse View Code jolloin sinulle aukeaa automaattisesti CommandButton1_Click- tapahtuma-aliohjelma johon lisäät Unload Me (sulkee userformin)
Koodi olisi siis tällainen:
Private Sub CommandButton1_Click()
Unload Me
End Sub
Samoin tee toinen painonappi, joka poistaa sepustuksen. Tämä oli kinkkisempi koska ei ole tiedossa kuinka monta textboxia formissa on. Tämä koodi tyhjentää kaikki formin objektit joilla on ominaisuus "Text"
Koodi olisi tälläinen
Private Sub CommandButton2_Click()
Dim I As Integer
On Error Resume Next
For I = 1 To Me.Controls.Count
Me.Controls(I).Text = ""
Next I
On Error GoTo 0
End Sub
Jos joku keksii tähän paremman, olisin hyvilläni ideoista.