Excel VBA UserForms -ohjelman käytön aloittaminen

Anonim


Tässä artikkelissa opit VBA -käyttäjämuotojen perusteet. Selitän, miten Excel -lomake luodaan, kuinka VBA -työkalupakkia käytetään, miten käyttäjän syötteitä käsitellään ja lopuksi kuinka tallennetaan käyttäjän syötteet. Käymme nämä aiheet läpi yhden esimerkin ja vaiheittaisen oppaan avulla. Jos luet tätä, oletan, että tiedät Excel VBA: n perusteet.
Aloitetaan ilman viivytyksiä.
Luo investointilomake Exceliin ja tallenna tietue
Aloitamme suunnittelemalla käyttäjälomakkeen. Tässä käyttäjämuodossa meillä on yksi tekstikenttä nimen, yksi iän, yksi investoinnin summan ja pari valintanapin mukaan sukupuolen mukaan. Aloitetaan.

Suunnittele käyttäjämuoto

  • Avaa Visual Basic Editor Excelissä käyttämällä ALT+F11 -pikakuvaketta. Napsauta Project Boxissa hiiren kakkospainikkeella VBAProject(tiedostosi). Sisään lisää vaihtoehto, valitse UserForm.
  • Välittömästi luodaan uusi kansio ja käyttäjätietosi löytyvät. Kaikki tämän projektin käyttäjämuodot lisätään tähän kansioon.
  • Muuta lomakkeen nimeksi InvestmentForm omaisuuslaatikko.
  • Ominaisuuslaatikko näkyy projektiselaimen vasemmassa alakulmassa. Jos et näe sitä, siirry katsomaan ja napsauta Ominaisuudet -ikkuna. Käytämme sitä paljon, joten varmista, että se on siellä. Sitä käytetään lomakkeiden muotoiluun, nimeämiseen ja mukauttamiseen.

  • Lisää elementtejä lomakkeeseen: Yllä olevassa kuvassa olen jo lisännyt elementtejä (tarrat, tekstiruutu, komentopainike). Uusi käyttäjälomake on kuitenkin täysin tyhjä. Sinun on käytettävä työkaluriviä elementtien lisäämiseen lomakkeeseen. Jos et näe työkalupakkia, hanki se näkymä välilehti.

  • Lisää tunnisteita kuvaavien nimien työkalupakilla. Lisää tekstiruutu käyttäjän syötteille.

    Lisää kaksi valintanappia ja nimeä ne mieheksi ja naiseksi.

    Olen käyttänyt kehystä niiden koteloimiseksi, mutta se ei ole välttämätöntä.

    Lisää komentopainikkeet Lähetä ja peruuttaa suorittaaksesi toiminnon annetulla tulolla.

  • Nimielementit: Tekstiruutu, tarrat, painikkeet jne. Ovat elementtejä. Ja jotta voimme käyttää niitä VBA -koodissa, meidän on annettava heille nimet. Käytämme ominaisuusikkunaa muuttaaksemme heidän nimensä.
  • Valitse elementti. Tässä olen nimen tekstikenttä. Siirry omaisuusikkunaan ja muuta nimi "NameBox”. Tee sama jokaiselle elementille, jota aiot käyttää. (sinun ei tarvitse nimetä tarroja, ellet halua niiden olevan napsautettavia.)


Olen nimennyt elementin uudelleen alla olevan taulukon mukaisesti ja viittaan niihin näillä nimillä. Sinulla voi olla erilaisia ​​nimiä. Korvaa nämä nimet vain omalla nimelläsi. Nämä ovat VBA -nimiä (koodinimi), joita käytetään koodissa. Ne eivät näy lomakkeessa.
Tarroissa ja painikkeissa näkyvä teksti on "Tekstitykset". Elementin nimi ja kuvateksti voivat olla samat, jos haluat.

Elementti Nimeä uudelleen
Nimi -tekstiruutu NameBox
Ikä -tekstiruutu AgeBox
Miesoptio -painike MaleOption
Naisvaihtoehto -painike NainenVaihtoehto
Investointi -tekstiruutu InvestBox
Lähetä komento -painike SubmitButton
Peruuta komentopainike Peruuta -painike
  • Näytä käyttäjälomake käyttäjälle: Nyt lomake on valmis, näytetään se käyttäjälle. Mutta odota, miten teen sen. Laskentataulukossa ei ole vaihtoehtoa soittaa käyttäjän lomakkeelle.
  • Itse asiassa käyttäjälomake tarvitsee laukaisun. Sitä ei voida näyttää itsestään. Voit käyttää komentopainiketta, aliohjelmaa tai tapahtumaa saadaksesi lomakkeen näkyviin ruudulle.

    Tässä aion käyttää komentopainiketta käyttäjän lomakkeen käynnistämiseen.

    • Siirry laskentataulukon kehittäjät -välilehdelle? Lisää? Painike (lomakkeen ohjaus). Nimeä se uudelleen avoimeksi muotoksi.
    • Napsauta sitä hiiren kakkospainikkeella. Napsauta Määritä makro ja napsauta sitten Uusi.

  • Alaosa luodaan välittömästi. Lisää nyt tämä rivi tähän osaan.
Sub Open_Form () 'Avauslomake InvestmentForm.Show End Sub 

Se on tehty. Palaa kyseiselle arkille ja napsauta painiketta. Käyttäjälomake avautuu.

  • Täytä taulukko VBA -käyttäjälomakkeella: Kun napsautimme komentopainiketta (avaa lomake), lomake avautuu. Nyt voit täyttää lomakkeen. Mutta kun napsautamme Lähetä -painiketta, tiedot olisi pitänyt syöttää tähän taulukkoon, mutta mitään ei tapahdu.

Koska emme ole kirjoittaneet mitään vba -ohjetta siihen. Meidän on tallennettava käyttäjän lomaketiedot taulukkoon.

  • Palaa VBA: han ja kaksoisnapsauta Lähetä -painiketta. Uusi alaosa luodaan automaattisesti. Tämä osa on upotettu lomakkeeseen, etkä löydä sitä mistään moduulista. Tämä on sama jokaiselle lomakkeen elementille.
  • Kirjoita tämä vba -koodi kyseiseen osaan.
 Private Sub SubmitButton_Click () Sheet1.Activate 'get first empty row on the sheet (lue siitä täältä) lstrow = Solut (Rows.Count, 1) .End (xlUp) .Row Set firstEmptyRow = Range ("A" & lstrow + 1 ) 'alusta kaikki solut tiedoilla firstEmptyRow.Offset (0, 0) .Value = nameBox.Value' ensimmäinen solu firstEmptyRow.Offset (0, 1) .Value = AgeBox.Value 'ensimmäinen solu oikealle firstEmptyRow.Offset (0, 3) .Arvo = InvestBox.Value 'kolmas solu oikealle' tarkistaa valintanappi If MaleOption.Value = True Sitten firstEmptyRow.Offset (0, 2) .Value = "Mies" '' toinen solu oikealla Else firstEmptyRow.Offset ( 0, 2. 

Yllä oleva katkelma VBA -koodista suoritetaan, kun Lähetä -painiketta napsautetaan. Se löytää taulukon ensimmäisen tyhjän rivin ja täyttää sen muodossa annetuilla arvoilla. Ja lopuksi se sulkee lomakkeen komennolla "Unload Me".

  • Sulje lomake Peruuta -komennolla. Toistaiseksi peruutuspainike on hyödytön. Se ei tee mitään. Jos haluat keskeyttää syötteen, voit käyttää peruutuspainiketta. Siinä tapauksessa:

Kaksoisnapsauta peruutuskomentopainiketta VBA -editorissa. Uusi alaosa luodaan. Kirjoita vain tämä koodirivi sulkeaksesi käyttäjälomakkeen.

 Private Sub CancelButton_Click () 'Sulkemislomake Unload Me End Sub 

Lopulta lomakkeen koodi näyttää tältä.

Ja siinä se. Näin käytät excel vba userformia saadaksesi palautetta käyttäjiltä. Tässä artikkelissa tutkimme juuri userformin peruskäyttöä, jotta voit tutustua siihen. Se on yksinkertaista, jos sinulla on tietoa vba -perusasioista.

Tulevissa artikkeleissa tutkimme vba -käyttäjämuotojen edistyneempiä toimintoja Excelissä. Luomme excelissä käyttäjämuodon tehdäksemme paljon enemmän. Tutkimme erilaisia ​​työkaluja ja elementtejä, jotka ovat käytettävissä vba userformissa. Siihen asti harjoittele tätä. Voit halutessasi ladata tämän tiedoston viitteelliseksi.
Joten kyllä ​​kaverit, tämä oli pieni ja yksinkertainen käyttäjämuodon opetusohjelma. Toivottavasti se oli kekseliäs. Kerro minulle, jos sinulla on epäilyksiä tästä, kerro minulle alla olevasta kommenttiosasta.
Aiheeseen liittyvät artikkelit

Muuta useiden UserForm-ohjausobjektien arvoa/sisältöä VBA: n avulla Excelissä

Estä käyttäjä lomakkeen sulkeminen, kun käyttäjä napsauttaa x-painiketta käyttämällä VBA: ta Excelissä

Palauta solut, joihin käyttäjä on viitannut käyttämällä RefEdit -ohjausobjektia käyttäjämuodossa Excelissä
Suosittuja artikkeleita:
VLOOKUP -toiminto Excelissä

COUNTIF Excel 2016: ssa

SUMIF -toiminnon käyttäminen Excelissä