Šiame „Excel“ priedo pavyzdyje aptariami pagrindiniai veiksmai, susiję su naudingo priedo, kurį galite naudoti supakuoti savo VBA procedūroms, kūrimas. Šis Excel VBA pavyzdys yra pagrįstas teksto konvertavimo priemone Keisti didžiąsias ir mažąsias raides.
„Excel“ darbaknygės nustatymas
„Excel“ darbaknygę sudaro vienas tuščias darbalapis, VBA modulis ir „UserForm“.
Pradinėje programos versijoje yra didžiųjų, mažųjų ir didžiųjų raidžių parinktys. Priedo versijoje yra dvi „UserForm“ parinktys, todėl ji turi tokias pačias parinktis kaip ir integruotas „Microsoft Word“ įrankis:
- Sakinio didžioji raidė : pirmąją raidę paverčia didžiąja, o visas kitas – mažosiomis.
- Perjungti didžiąsias ir mažąsias raides : visi didžiosios raidės paverčiami mažosiomis raidėmis ir atvirkščiai.
Šiame paveikslėlyje parodyta UserForm1. Penki OptionButton valdikliai yra rėmelio valdiklyje. Be to, UserForm turi mygtuką Atšaukti (pavadintą CancelButton) ir mygtuką OK (pavadinimu OKButton).
Keitimo atvejo priedas UserForm.
Kodas, vykdomas paspaudus mygtuką Atšaukti, yra labai paprastas. Ši procedūra iškrauna vartotojo formą be jokių veiksmų:
Private Sub CancelButton_Click()
Išsiųskite UserForm1
Pabaigos sub
Toliau pateikiamas kodas, kuris vykdomas spustelėjus mygtuką Gerai. Šis kodas atlieka visą darbą:
Privatus sub OKButton_Click()
Pritemdyti teksto langelius kaip diapazoną
Pritemdyti langelį kaip diapazoną
Pritemdykite tekstą kaip eilutę
Dim i As Long
Sukurkite objektą naudodami tik teksto konstantas
Įvykus klaidai, tęskite toliau
Nustatyti teksto langelius = Selection.SpecialCells(xlConstants, xlTextValues)
Išjunkite ekrano atnaujinimą
Application.ScreenUpdating = Netiesa
' Pereikite per ląsteles
Kiekvienam langeliui Text Cells
Tekstas = cell.Value
Pasirinkite Case True
Case Option Lower 'mažosios raidės
langelis.Vertė = LCase(cell.Value)
Atvejo parinktisDIDŽIŲJŲ RADIŲ
langelis.Vertė = UCase(cell.Value)
Case OptionProper 'Proper Case
cell.Value = WorksheetFunction.Proper(cell.Value)
Case OptionSentence „Sakinio didžioji raidė
Tekstas = UCase(kairė(ląstelė.reikšmė, 1))
Tekstas = Tekstas & LCase(Viduris(ląstelė.Vertė, 2, Len(ląstelė.Vertė)))
cell.Value = tekstas
Case OptionPerjungti 'TOGGLE CASE
Jei i = 1 iki Len (tekstas)
Jei vidurys (tekstas, i, 1) patinka „[AZ]“, tada
Vidurio (tekstas, i, 1) = LCase (vidutinis (tekstas, i, 1))
Kitas
Vidurio (tekstas, i, 1) = UCase (Viduris (tekstas, i, 1))
Pabaiga, jei
Toliau i
cell.Value = tekstas
Pabaigos pasirinkimas
Kitas
Iškelkite dialogo langą
Išsiųskite UserForm1
Pabaigos sub
„Excel“ darbaknygės testavimas
Prieš konvertuodami šią darbaknygę, išbandykite „Excel“ priedą. Norėdami imituoti, kas nutinka, kai darbaknygė yra priedas, turėtumėte išbandyti darbaknygę, kai aktyvi kita "Excel" darbaknygė. Kadangi „Excel“ priedas niekada nėra aktyvus lapas ar darbaknygė, jį išbandę, kai atidaryta kita darbaknygė, galite nustatyti kai kurias galimas klaidas.
Atidarykite naują darbaknygę ir įveskite informaciją į kai kuriuos langelius.
Testavimo tikslais įveskite įvairių tipų informaciją, įskaitant tekstą, reikšmes ir formules. Arba tiesiog atidarykite esamą darbaknygę ir naudokite ją savo testams. Atminkite, kad bet kokių darbaknygės pakeitimų anuliuoti negalima, todėl galbūt norėsite naudoti kopiją.
Pasirinkite vieną ar daugiau langelių (arba visas eilutes ir stulpelius).
Vykdykite „ChangeCase“ makrokomandą pasirinkdami naują komandą „Change Case“ iš langelio (arba eilutės ar stulpelio) nuorodų meniu.
Jei komanda Change Case nerodoma sparčiajame meniu, greičiausiai priežastis yra ta, kad neįjungėte makrokomandų, kai atidarėte darbaknygę change case.xlsm. Uždarykite darbaknygę ir vėl atidarykite – ir įsitikinkite, kad įgalinote makrokomandas.
Aprašomosios informacijos įtraukimas į „Excel“ priedą
Nors ir nebūtina, geriausia praktika yra įvesti „ Excel“ papildinio aprašą . Norėdami pridėti aprašymą, atlikite šiuos veiksmus:
Suaktyvinkite darbaknygę Keisti case.xlsm.
Pasirinkite Failas → Informacija ir apačioje dešinėje spustelėkite Rodyti visas ypatybes.
„Excel“ išplečia ypatybių sąrašą.
Lauke Pavadinimas įveskite papildinio pavadinimą.
Šis tekstas rodomas priedų sąraše dialogo lange Papildiniai. Šiame pavyzdyje įveskite Change Case.
Lauke Komentarai įveskite aprašymą.
Ši informacija rodoma dialogo lango Papildiniai apačioje, kai pasirenkamas priedas. Šiame pavyzdyje įveskite
Pakeičia teksto didžiąsias ir mažąsias raides pasirinktuose langeliuose.
Pasiekite šią priemonę naudodami spartųjį meniu.
Šiame paveikslėlyje parodyta ypatybių skiltis, kurioje yra užpildyti pavadinimo ir komentarų laukai.
Norėdami įvesti aprašomosios informacijos apie savo priedą, naudokite skyrių Ypatybės.
VBA kodo apsauga
Jei norite pridėti slaptažodį, kad kiti negalėtų peržiūrėti VBA kodo, atlikite šiuos veiksmus:
Suaktyvinkite VBE ir projekto lange pasirinkite darbaknygę keisti case.xlsm.
Pasirinkite Įrankiai → VBAProject Properties ir pasirodžiusiame dialogo lange spustelėkite skirtuką Apsauga.
Pažymėkite žymės langelį Užrakinti projektą peržiūrai ir įveskite slaptažodį (du kartus).
Spustelėkite Gerai.
Išsaugokite darbaknygę pasirinkdami Failas → Išsaugoti VBE arba grįžę į Excel langą ir pasirinkę Failas → Išsaugoti.
„Excel“ priedo kūrimas
Šiuo metu išbandėte failą change case.xlsm ir jis veikia tinkamai. Kitas žingsnis yra priedo kūrimas. Atlikite šiuos veiksmus:
Jei reikia, iš naujo suaktyvinkite „Excel“.
Suaktyvinkite darbaknygę Change case.xlsm ir pasirinkite Failas → Įrašyti kaip → Naršyti.
„Excel“ rodo dialogo langą Įrašyti kaip.
Išskleidžiamajame meniu Įrašyti kaip tipą pasirinkite Priedas (*.xlam).
Nurodykite vietą ir spustelėkite Išsaugoti.
Sukuriamas naujas priedo failas (su plėtiniu .xlam), o pradinė XLSM versija lieka atidaryta.
„Excel“ priedo atidarymas
Kad išvengtumėte painiavos, uždarykite XLSM darbaknygę prieš atidarydami priedą, kurį sukūrėte iš tos darbaknygės.
Atidarykite priedą atlikdami šiuos veiksmus:
Pasirinkite Kūrėjas → Papildiniai → Priedai (arba paspauskite Alt+TI).
„Excel“ rodo dialogo langą „Papildiniai“.
Spustelėkite mygtuką Naršyti.
Raskite ir pasirinkite ką tik sukurtą priedą.
Spustelėkite Gerai, kad uždarytumėte dialogo langą Naršyti.
Suradę naują priedą, dialogo lange Papildiniai pateikiami papildiniai. Kaip parodyta toliau, dialogo lange Papildiniai taip pat rodoma aprašomoji informacija, kurią pateikėte dokumentų ypatybių skydelyje.
Dialogo lange Papildiniai pasirinktas naujas priedas.
Įsitikinkite, kad naujasis priedas pasirinktas dialogo lange Papildiniai.
Spustelėkite Gerai, kad uždarytumėte dialogo langą.
„Excel“ atidaro priedą. Dabar galite jį naudoti su visomis savo darbaknygėmis. Tol, kol jis lieka pažymėtas dialogo lange Papildiniai, priedas atidaromas kiekvieną kartą paleidus Excel.
„Excel“ priedo platinimas
Jei esate dosniai nusiteikęs, galite platinti šį priedą kitiems Excel vartotojams tiesiog pateikdami jiems XLAM failo kopiją. (Jiems nereikia XLSM versijos.) Kai jie atidaro priedą, nauja komanda Keisti didžiąją raidę pasirodo nuorodų meniu, kai jie pasirenka diapazoną, vieną ar daugiau eilučių arba vieną ar daugiau stulpelių. Jei užrakinsite VBA projektą slaptažodžiu, kiti negalės peržiūrėti jūsų makrokomandos kodo, nebent žinos slaptažodį.
„Excel“ priedo keitimas
Papildinį galima redaguoti kaip ir bet kurią kitą darbaknygę. XLAM failą galite redaguoti tiesiogiai (nereikia dirbti su originalia XLSM versija) atlikdami šiuos veiksmus:
Atidarykite XLAM failą, jei jis dar nėra atidarytas.
Suaktyvinkite VBE. Projekto lange du kartus spustelėkite projekto pavadinimą.
Jei apsaugote kodą, būsite paraginti įvesti slaptažodį.
Įveskite slaptažodį ir spustelėkite Gerai.
Atlikite kodo pakeitimus.
Išsaugokite failą pasirinkdami Failas → Išsaugoti.
Jei kuriate priedą, kuriame informacija saugoma darbalapyje, norėdami peržiūrėti darbaknygę, turite nustatyti darbaknygės ypatybę IsAddIn į False. Tai galite padaryti ypatybių lange, kai pasirenkamas objektas ThisWorkbook. Atlikę darbaknygės pakeitimus, prieš išsaugodami failą įsitikinkite, kad ypatybę IsAddIn vėl nustatėte į True.
Papildinio kūrimas, o ne priedas.