„Excel“ vartotojo formos - „Excel“ patarimai

Turinys
„Excel 97“ pristatė naujas vartotojo formas. Anglų kalba išmokykite mane sukurti ir naudoti sąrašo laukelį.

„MrExcel“ neseniai užpildė pritaikytą paraišką vienam iš mūsų skaitytojų. Šioje „Excel“ programoje vartotojas lape įrašys 150 duomenų taškų, nurodančių konkretų dalies numerį.

1. Spustelėjus mygtuką, šios dalies numeris ir susijusios duomenų reikšmės priskiriamos „Sheet2“ duomenų bazei. Tai buvo puiku, bet tada mums reikėjo, kaip vartotojas galėtų iškviesti įrašą iš 2 lapo, kad jis galėtų peržiūrėti įrašus. Norėjau leisti vartotojui atidaryti formą su išskleidžiamuoju laukeliu, kuriame būtų rodomi visi lape esantys elementai

2. Vartotojas galėjo slinkti, pasirinkti elementą ir tada aš ištraukčiau tas vertes nuo 2 lapo iki 1 lapo.

Kaip ir daugelis jūsų, aš pradėjau rašyti „Excel“ makrokomandas „Excel 5.0“. Šis visas „Excel 97“ makrokomandų redaktorius šiek tiek gąsdina. Šios savaitės patarimu aš jums žingsnis po žingsnio parodysiu, kaip sukurti šio projekto sąrašo laukelį. Šią savaitę didžiausias dėmesys skiriamas tik kombinuotam langeliui. Tikslinė auditorija yra tas, kuris žino pagrindinius „Excel“ makrokomandas, tačiau niekada nenaudojo formos sąveikai su makrokomanda.

Pirmas žingsnis: Aš pakeičiau esamas makrokomandas taip, kad pridėjus įrašą prie 2 lapo, makrokomanda pavadintų diapazoną, kuriame yra dalių numeriai, kuriuos reikia pavadinti „PartList“. A1 langelyje yra antraštė, o A2 langelyje yra pirmasis elementas. Aš naudoju komandą Pabaiga, norėdamas rasti paskutinę eilutę:

LastRow = Range("A6000").End(xlUp).Row ActiveWorkbook.Names.Add Name:="PartList", RefersTo:="=Sheet2!$A$2:$A$" & LastRow

Antras žingsnis: išdėstykite sąrašo laukelio formą. Atlikite šiuos veiksmus:

  • Paleiskite „Visual Basic“ redaktorių paspausdami „Alt-F11“
  • Meniu pasirinkite Įterpti> Vartotojo forma. Redaktorius turėtų pateikti tuščią „UserForm1“.
  • Jei apatiniame kairiajame kampe nematote langelio „Properties-UserForm1“, paspauskite piktogramą „Ypatybių langas“ - tai atrodo kaip ranka, kurios pirštas rodo į baltą lapą.
  • 4-as įrašas ypatybių lange yra Antraštė. Šiuo metu antraštė bus „UserForm1“. Lange Ypatybės spustelėkite langelį antraštės dešinėje ir įveskite naują formos pavadinimą. Aš pavadinau savo „Pasirinkite norimą peržiūrėti dalies numerį“. Palikau visas kitas formos ypatybes numatytojoje būsenoje.
    Sąrašo langelio kūrimas naudojant „Userform“
  • Dar kartą spustelėkite bet kurią vartotojo formos vietą ir pasirodys Valdymo įrankių dėžutė.
  • Valdiklių įrankių laukelyje pažymėkite A raidę. Spustelėkite ir vilkite, jei norite sukurti etiketės langelį formos viršuje. Numatyta turėti etiketę1. Dar kartą spustelėkite teksto laukelio viduje ir galėsite redaguoti antraštę. Įdėkite instrukcijas vartotojui čia: "Pasirinkite elementą iš žemiau esančio sąrašo ir spustelėkite Gerai, kad peržiūrėtumėte reikšmes".
  • Spustelėkite formą, bet ne etiketės laukelyje ir vėl pamatysite valdymo įrankių laukelį. 4-asis elementas viršutinėje eilutėje yra kombinuoto langelio įrankis. Spustelėkite tai ir vilkite vartotojo formą, kad sukurtumėte kombinuotą laukelį. Čia pasirodys dalių numerių sąrašas. Numatytasis pavadinimas yra „ComboBox1“.
    „Combobox“ ypatybės
  • Dabar ypatybių lange bus rodomos „ComboBox1“ ypatybės. Slinkite žemyn per ypatybes, kol pamatysite „RowSource“ ypatybę. Ypatybei „RowSource“ įveskite = Sheet2! PartList
  • Dabar galite atlikti greitą testą, kad įsitikintumėte, jog viskas veikia tinkamai. Spustelėkite vartotojo formos antraštės juostą, kad pasirinktumėte visą formą. Dabar spustelėkite piktogramą „groti“ (atrodo, kad vaizdo grotuvo grojimo mygtukas yra). Būsite grąžinti į „Excel“ darbaknygę ir turėsite paprastą vartotojo formą. Jei spustelėsite išskleidžiamąjį dalies numerį, turėtumėte pamatyti galiojančių dalių numerių sąrašą. Pasirinkite vieną, ir jis liks kombinuotame laukelyje. Kol kas ne per daug jaudina. Spustelėkite mažąjį X viršutiniame dešiniajame kampe, kad atsisakytumėte langelio.
  • Grįžkite į „Visual Basic“ redaktorių. Spustelėkite vartotojo formą, kad būtų rodoma Valdymo įrankių dėžutė. Spustelėkite „CommandButton“ įrankį ir nupieškite mygtuką. Pakeiskite antraštę kaip gerai, naudodami langą Ypatybės - „CommandButton1“.
  • Nubrėžkite antrą mygtuką ir pažymėkite jį Atšaukti.
  • Mes beveik baigėme. Susiekime truputį kodo prie mygtuko „Atšaukti“. Dešiniuoju pelės mygtuku spustelėkite mygtuką „Atšaukti“ ir pasirinkite „Peržiūrėti kodą“. Redaktorius nustatys jūsų sub ir end sub sakinius. Tarp jų įveskite vieną kodo eilutę:
    UserForm1.Hide
  • Taip, viskas, ką reikia priskirti kodą mygtukui. Norėdami grįžti prie vartotojo formos, dukart spustelėkite žodžius „UserForm1“ projekto lange. (Nematote projekto lango? Paspauskite „Project Explorer“ piktogramą, esančią kairėje nuo piktogramos „Ypatybės“.)
  • Norėdami užpildyti vartotojo formą1, atlikime kažką naudodami mygtuką Gerai. Kai vartotojas spusteli Gerai, noriu, kad sąrašo laukelio vertė būtų rodoma 1 langelio langelyje A2, ir tada noriu paleisti anksčiau parašytą makrokomandą, vadinamą „ReviewItem“. Dešiniuoju pelės mygtuku spustelėkite mygtuką Gerai ir pasirinkite Peržiūrėti kodą. Įveskite šį „Private Sub CommandButton1_Click ()“ kodą:
    Worksheets("Sheet1").Range("A2") = UserForm1.ComboBox1.Value UserForm1.Hide ReviewItem

Sveikiname! Užpildėte pirmąją vartotojo formą. Norėdami, kad forma būtų rodoma, vykdykite makrokomandą, kurioje yra ši eilutė:

UserForm1.Show

Forma atrodys maždaug taip:

Baigta „Userform“

Įdomios straipsniai...