Microsoft Excel skriptspråk , Visual Basic, ikke bare øker funksjonaliteten til Excel , men også kan gjøre at funksjonaliteten enklere å bruke - gjennom bruker former. Bruker former er små vinduer som brukerne kan skrive inn regnearkdata gjennom. Opprett Form
Begynn å opprette en bruker skjema ved å angi Visual Basic IDE (integrert utviklingsmiljø ) : fra Excel-regneark , trykker du "alt " - " F11 " . Lag en ny bruker skjema fra " Insert "> " UserForm "
Dra og slipp følgende kontroller fra verktøykassen på skjemaet : . To tekstbokser, den andre under den første . Legge til en kommando knappen nedenfor tekstboksene , og to label kontroller , hver til venstre for en tekstboks . I Egenskaper-vinduet , endre tittelen for den øvre etiketten til " Navn ", og bildeteksten av nedre etiketten til " E-postadresse ". Endre knappens bildetekst på "Send ".
Tast inn koden
nå skrive koden som henter data fra skjemaet og setter den inn i et regneark .
Fra skjemaet designer vinduet , dobbeltklikker du på "Send "-knappen . . Markøren flytter til button1_click arrangementet, som går av når knappen klikkes løpet program runtime
I button1_click hendelse, skriver du inn følgende programkode : en
Dim r Som Range
< p> Set r = Range (" a65536 ") . End ( xlUp )
Set r = r.Offset ( 1 , 0 )
r.Value = TextBox1.Value
< p> Set r = r.Offset ( 0 , 1 ) r.Value = TextBox2.Value - ----------------------------- -----------
Skriv en liten subrutine som viser den nye brukeren skjemaet. Inne i IDE, dobbeltklikker du på ThisWorkbook ikonet i Prosjekt -ruten. I koden vinduet, skriv denne nye subrutine : en
Public Sub Mac1 ( ) UserForm1.Show
End Sub
Kjør programmet fra Excel-regnearket ved å gå til Developer > makroer , velge " Mac1 ", og trykke på " Kjør"-knappen . Angi noen regnearkdata med din bruker skjemaet.
Utforsk Program
Den første linjen i button1_click erklærer en rekke variable . Et utvalg er et sett med regneark celler. Du vil legge inn data i dette området med koden etter Dim uttalelse
Uttalelsen Set r = Range (" a65536 ") End ( xlUp ) definerer en rekke én celle : . . Det nest siste cellen i foregående rad av data. Dette er ikke et intuitivt utseende stykke kode , så ikke bekymre deg hvis du ikke forstår det ved første øyekast . Bryt opp uttalelsen for å se hvordan det fungerer. The Range (" a65536 ") del som angir klart cellen a65536 - veien nederst i den første kolonnen i regnearket. Den neste stykke, End ( xlUp ) , er et annet område : det er der markøren ville ende opp hvis du hadde det i utgangspunktet på celle a65536 , trykket på avslutt-tasten , og deretter trykket på pil opp
p Hvis du var. å legge inn data på denne cellen , vil du overskrive den forrige rad . Det er derfor du trenger den neste setningen : Set r = r.Offset ( 1 , 0 ) . Den uttalelsen omdefinerer serien for å være en rad ned (og null kolonnene til høyre ) fra der den var. Serien "r " er nå i den første tomme cellen under eventuelle eksisterende rader med data . Det er der koden din kan begynne å legge inn en ny data rad.
Fylling Cell data fra Form Input
De neste uttalelser flytte skjemadata til området koden bare identifisert som de første tomme celler under den forrige data rad. r.Value = TextBox1.Value setter den tomme cellen sin verdi med verdien fra den første tekstboksen . Den neste cellen er en kolonne til høyre , og Set r = r.Offset ( 0 , 1 ) omdefinerer serien å være at cellen . Argumentene 0 og 1 refererer til 0 rader nedover og en celle til høyre for den gamle serien er ( "r" ) plassering .
Fylling de to kolonnene fullfører en data rad. Når brukeren klikker på knappen , vil button1_click arrangementet kjøre igjen . The Set r = Range (" a65536 ") . End ( xlUp ) vil igjen riktig innstilt omfanget av den nye raden .