VBA - „Visual Basic“ redaktoriaus nuorodos

Ši pamoka parodys įvairius tikrai naudingus sparčiuosius klavišus VBA

Norėdami atidaryti VBE, naudokite Alt + F11

Paprastai, norėdami patekti į „Visual Basic“ redaktorių, turite spustelėti „Visual Basic“ mygtuką „Excel“ juostelėje. Tačiau galite paspausti Alt + F11 vietoj to!

Greiti klavišai VBE

Ctl+r- rodo Projektų tyrinėtojas.

Ctl+g - rodo Iškart langas.

F4 - rodo Ypatybių langas.

F2 - rodo Objektų naršyklė.

F5 - paleidžia Procedūra tu viduje.

F8 - leidžia pereiti prie kodo Pertrauka režimu.

Makro įrašymas

Vienas iš geriausių būdų išmokti VBA yra įrašyti makrokomandą ir tada išanalizuoti kodą. Tai taip pat labai greitas kodo rašymo būdas, tačiau įrašymo įrenginys įrašys VISUS klavišų paspaudimus, todėl gali tekti redaguoti kodą, kad pašalintumėte nereikalingas eilutes.

Leiskite išnagrinėti makrokomandos įrašymo įrenginio žemiau įrašytą makrokomandą ir pažiūrėkime, kaip galėtume ją padaryti efektyvesnę.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 Papildomas testavimo formatas ()'„TestFormat“ makrokomanda'„Spartusis klavišas: Ctrl+Shift+T'ActiveCell.FormulaR1C1 = "Obuoliai"Diapazonas („D3“). PasirinkiteActiveCell.FormulaR1C1 = "Kriaušės"Diapazonas („E3“). PasirinkiteActiveCell.FormulaR1C1 = "Persikai"Diapazonas („C4“). PasirinkiteActiveCell.FormulaR1C1 = "12"Diapazonas („D4“). PasirinkiteActiveCell.FormulaR1C1 = "14"Diapazonas („E4“). PasirinkiteActiveCell.FormulaR1C1 = "16"Diapazonas („C5“). PasirinkiteActiveCell.FormulaR1C1 = "20"Diapazonas („D5“). PasirinkiteActiveCell.FormulaR1C1 = "25"Diapazonas („E5“). PasirinkiteActiveCell.FormulaR1C1 = "26"Diapazonas („C6: E6“). PasirinkiteDiapazonas („E6“). AktyvintiPasirinkimas.FormulaR1C1 = "= SUM (R [-2] C: R [-1] C)"Selection.Borders (xlDiagonalDown) .LineStyle = xlNoneSelection.Borders (xlDiagonalUp) .LineStyle = xlNoneSelection.Borders (xlEdgeLeft) .LineStyle = xlNoneSu pasirinkimu.Borders (xlEdgeTop).LineStyle = xlTęstinis.ColorIndex = 0.TintAndShade = 0.Svoris = xlPlonasPabaiga suSu pasirinkimu.Borders (xlEdgeBottom).LineStyle = xlDvigubas.ColorIndex = 0.TintAndShade = 0.Svoris = xlTirštasPabaiga suSelection.Borders (xlEdgeRight) .LineStyle = xlNoneSelection.Borders (xlInsideVertical) .LineStyle = xlNoneSelection.Borders (xlInsideHorizontal) .LineStyle = xlNoneDiapazonas („C4: E6“). PasirinkiteSelection.NumberFormat = _"_- [$$-lt-US]*#, ## 0.00_; _- [$$-lt-US]*-#, ## 0.00; _- [$$-lt-US]*" " -"" ?? _; _-@_ "Diapazonas („C3: E3“). PasirinkiteSelection.Font.Bold = TiesaDiapazonas („C3“). PasirinkiteActiveCell.FormulaR1C1 = "Obuoliai"Pabaiga Sub

Dabar pažvelkite į žemiau esantį kodą, kuris pasieks tą patį rezultatą

123456789101112131415161718192021 Papildomas testavimo formatas ()„Spartusis klavišas: Ctrl+Shift+TDiapazonas ("C3") = "Obuoliai"Diapazonas ("D3") = "Kriaušės"Diapazonas ("E3") = "Persikai"Diapazonas ("C4") = 12Diapazonas ("D4") = 14Diapazonas ("C4") = 16Diapazonas ("C5") = 20Diapazonas ("D5") = 25Diapazonas ("E5") = "26"Diapazonas („C6: E6“). PasirinkitePasirinkimas.FormulaR1C1 = "= SUM (R [-2] C: R [-1] C)"Selection.Borders (xlEdgeTop) .LineStyle = xlContinuousSelection.Borders (xlEdgeBottom) .LineStyle = xlDoubleDiapazonas („C4: E6“). PasirinkiteSelection.NumberFormat = _"_- [$$-lt-US]*#, ## 0.00_; _- [$$-lt-US]*-#, ## 0.00; _- [$$-lt-US]*" " -"" ?? _; _-@_ "Diapazonas („C3: E3“). PasirinkiteSelection.Font.Bold = TiesaPabaiga Sub

Iškirpdami daug nereikalingo kodo ir, jei įmanoma, pakeisime įrašytą kodą, galime padaryti makrokomandą daug efektyvesnę ir lengviau skaitomą.

Asmeninės makrokomandos darbaknygės naudojimas

Jei norite, kad makrokomandą būtų galima naudoti visuose „Excel“ failuose, galite ją išsaugoti asmeninėje makrokomandos darbaknygėje - ši darbaknygė yra paslėpta ir visą laiką atidaryta „Excel“, todėl visos jame saugomos makrokomandos tampa visuotinėmis makrokomandomis .

Jei VBE lange nematote asmeninės makrokomandos darbaknygės, įrašykite makrokomandą ir nurodykite, kad ji būtų saugoma asmeninės makrokomandos darbaknygėje.

Įtraukos kodas

Kai įvedate kodo įtrauką, iškart palengvinate skaitymą ir kažkas kitas gali sekti. Norėdami įterpti kelias kodo eilutes, galite jas pasirinkti ir paspausti klavišą Tab.

Panašiai, norėdami pakeisti kodą, paspauskite „Shift“+„Tab“ ir kodas vėl pasisuks į kairę.

Pavargote ieškoti VBA kodo pavyzdžių? Išbandykite „AutoMacro“!

Komentuojantis kodas

Komentarų pridėjimas prie kodo yra dar vienas būdas palengvinti skaitymą ir naršymą. Prie kodo pridedate komentarą, eilutės pradžioje padėdami vieną kabutę, kaip parodyta žemiau.

Rašymas mažosiomis raidėmis

VBA naudoja „Proper Case“ kodą. Jei rašote mažosiomis raidėmis ir jis nekeičiamas į tinkamą raidę, galite greitai pamatyti, kur padarėte klaidą.

Naudojant Intellisense

Kai rašote kodą, pasirodo „Intellisense“ ir pateikiamas visų objekto, su kuriuo dirbate, savybių, metodų ir įvykių sąrašas. Paprastai jis automatiškai pasirodo įvedus kodą, kai įvedate laikotarpį.

Taip pat galite priversti jį rodyti paspausdami Ctl+j.

Panašiai, kai naudojate „Excel“ funkcijas, kurios priima argumentus, jos paprastai pasirodo automatiškai.

Galite priversti juos pasirodyti paspausdami Ctl+i.

Automatinis užbaigimas

Galite naudoti Ctl+tarpo klavišas klavišų kombinacija, kad rašant kodą būtų naudojamas automatinis užbaigimas.

Aukščiau pateiktame pavyzdyje visi Savybės, metodai, įvykiai ir Kintamieji pradedant nuo str pasirodys sąraše, kurį galėsite pasirinkti.

Pasirinkimo aiškus ir kompiliavimo kodas

Įsitikinę, kad visų modulių viršuje yra „Option Explicit“, užtikrinama, kad visi jūsų kintamieji būtų deklaruojami, ir neleidžiate klysti kintamųjų pavadinimuose. Jei įjungėte „Explicit Option“ ir sukompiliuosite arba paleisite savo kodą, gausite klaidą, jei kintamojo pavadinimas nebus atpažintas.

Neatidėliotinas langas ir derinimas

Neatidėliotinas langas (galite jį įjungti naudodami Ctl+g) leidžia jums derinti kodą ir rasti kintamųjų vertę, kai esate šiuo derinimo režimu.

12345678 Antriniai bandymų kintamieji“paskelbti kintamąjįPritemdyti strName kaip eilutė“užpildykite kintamąjįstrName = "Anne Smith"Naudokite F8, kad pereitumėte kodą ir išsiųstumėte kintamojo reikšmę naudodami debug.print į tiesioginį langąDerinimas. Spausdinti strNamePabaiga sub

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave