Kā norāda nosaukums, objektu izveidošanai tiek izmantota funkcija CreateObject.
Bet kāpēc mēs izmantojam CreateObject metodi vai funkciju, ja mēs varam tieši izveidot objektu, izmantojot jauno atslēgvārdu?
Tas ir pamatots jautājums, un mums ir atbilstoša atbilde.
Tiek saukta objekta izveide, izmantojot CreateObject Vēlu iesiešana. Vēlā saistīšanā objektu izveide notiek izpildes laikā. Tam nav jāpievieno atsauces. Tas padara VBA kodu pārnēsājamu.
Piemēram, ja izveidojat lietojumprogrammu, kas nodarbojas ar citām lietojumprogrammām un kuru izmantojat agrīna iesiešana pievienojot atsauces un izmantojot jauns atslēgvārds. Vēlāk jūs pārsūtīsit šo kodu uz citu mašīnu, tad jums būs jāpievieno arī atsauces šajā mašīnā. Bet, ja jūs būtu izmantojis CreateObject metodi citu lietojumprogrammu objektu izveidei, jums nebūs jāpievieno atsauces uz citām mašīnām, ja kodu pārsūtīsit vai kopīgojat.
Šajā rakstā mēs uzzināsim par CreateObject metodi, izmantojot dažus piemērus.
Funkcijas CreateObject sintakse:
Iestatiet objekta_nosaukums = CreateObject (klases nosaukums kā virkne, [servera nosaukums]) |
klases nosaukums kā virkne: Tas ir obligāts mainīgais. Tā ir virkne, kas attiecas uz lietojumprogrammas nosaukumu un objekta veidu. Izveidojamā objekta lietojumprogrammas nosaukums un klase ir jādeklarē sadaļā AppName.ObjecType. Piemēram, ja es vēlos Word lietojumprogrammas objektu, es rakstītu "Word.Application". Mēs to sīkāk aplūkosim piemēros vēlāk.
[servera nosaukums]: Tas ir neobligāts mainīgais. Tā ir tīkla servera nosaukuma virkne, kurā tiks izveidots objekts. Ja servera nosaukums ir tukša virkne (""), tiek izmantota vietējā mašīna. Šajā nodaļā mēs to neizmantosim.
Tagad, kad mēs zinām funkcijas CreateObject pamatus, izmantosim tos dažos piemēros:
1. piemērs: atveriet Microsoft Word lietojumprogrammu, izmantojot Excel VBA
Tātad, ja mēs vēlētos izmantot agrīno iesiešanu, mēs pievienotu atsauces uz vārdu lietojumprogrammām, izmantojot izvēlni Rīki-> Atsauces.
Un mūsu kods izskatīsies šādi.
Sub OpenWordApp () Dim wordApp kā jauns Word.Application Dim wordDoc Kā dokuments wordApp.Visible = True wordDoc = wordApp.Documents.Add End Sub
Šī koda priekšrocība ir tā, ka jūs saņemat VBA intelekta palīdzību, un tas parāda jūsu izveidotā objekta pieejamo metodi un īpašības. Tas lieliski darbosies jūsu sistēmā. Bet, ja kopīgojat šo kodu kādam citam un viņš no rīkiem nav pievienojis atsauci uz Microsoft vārdu bibliotēku, viņi saņems kļūdu.
Lai izvairītos no šīs kļūdas, izmantojiet zemāk esošo kodu.
Sub OpenWordApp () Dim wordApp kā objekts Iestatīt wordApp = CreateObject ("Word.Application") Dim dimdoc kā objekts wordApp.Visible = True Set wordDoc = wordApp.Documents.Add End Sub
Iepriekš minētais kods lieliski darbosies jebkurā mašīnā. Tas ir pārnēsājams, jo mēs veidojam vēlu saistīšanu, izmantojot objekta izveidošanas metodi CreateObject.
Apskatīsim vēl vienu piemēru:
2. piemērs. Izveidot darbgrāmatas objektu, izmantojot funkciju CreateObject
Ja kādu laiku strādājat ar VBA, jums jābūt izveidotam vai jāpievieno darbgrāmatās, izmantojot Jauns atslēgvārds. Šajā piemērā mēs to darīsim, izmantojot CreateObject.
Sub addSheet () 'Deklarējiet objekta mainīgo, lai turētu objektu'. Dim kā Object izraisa novēlotu saistīšanu. Izgaismot ExcelSheet kā objektu Iestatiet ExcelSheet = CreateObject ("Excel.Sheet") 'Padariet Excel redzamu, izmantojot lietojumprogrammas objektu. ExcelSheet.Application.Visible = True 'Ievietojiet tekstu lapas pirmajā šūnā. ExcelSheet.Application.Cells (1, 1) .Value = "Šī ir A slejas 1. rinda" Saglabājiet lapu direktorijā C: \ test.xls. ExcelSheet.SaveAs "C: \ TEST.XLS" 'Aizveriet programmu Excel ar metodi Quit lietojumprogrammas objektā. ExcelSheet.Application.Quit 'Atlaidiet mainīgo. Iestatīt ExcelSheet = Nekas Beigu apakš
Tātad, jā, puiši, šādi jūs izmantojat CreateObject metodi VBA. Apspriedīsim tā priekšrocības un trūkumus.
CreateObject priekšrocības, lai izveidotu objektu
CreateObject galvenā priekšrocība ir tā, ka tas padara jūsu kodu pārnēsājamu (ja objekta izveide ir problēma). Jūs varat koplietot kodu ikvienam, neuztraucoties par to, vai viņi ir pievienojuši atsauci objektu programmai, izmantojot vai nē.
CreateObject trūkums
CreateObject metodes trūkumi ir šādi:
Jums jāzina tās klases struktūra, kuru izmantosit objektu izveidei.
Kad esat izveidojis objektu, jūs esat pilnībā atkarīgs no savas atmiņas attiecībā uz objektu metodēm un īpašībām, jo VBA nesniedz nekādas intellisense, lai jums palīdzētu.
Mēs varam pārvarēt iepriekš minētos trūkumus. Man ir triks.
Ikreiz, kad es rakstu kodu, kas tiks kopīgots ar citiem, es izmantoju pirmo metodi objektu izveidošanai (atsauču pievienošana no rīkiem). Tas palīdz man ātrāk uzrakstīt kodu. Kad esmu pabeidzis VBA programmu un to izmēģinājis, es jauno metodi aizstāju ar CreateObject metodi. Tas padara kodu pārnēsājamu. Jūs varat izmantot šo triku.
Tātad, jā, puiši, šādi varat izmantot funkciju CreateObject, lai izveidotu objektus VBA. Ceru, ka varēju visu izskaidrot. Ja jums ir kādi jautājumi par šo rakstu vai citi ar VBA saistīti jautājumi, jautājiet man komentāru sadaļā zemāk.
Darba sākšana ar Excel VBA UserForms| Es paskaidrošu, kā izveidot veidlapu programmā Excel, kā izmantot VBA rīklodziņu, kā rīkoties ar lietotāja ievadi un visbeidzot, kā saglabāt lietotāja ievadīto informāciju. Mēs apskatīsim šīs tēmas, izmantojot vienu piemēru un soli pa solim.
VBA mainīgie programmā Excel| VBA apzīmē Visual Basic for Applications. Tā ir programmēšanas valoda no Microsoft. To izmanto ar Microsoft Office lietojumprogrammām, piemēram, MSExcel, MS-Word un MS-Access, turpretī VBA mainīgie ir specifiski atslēgvārdi.
Excel VBA mainīgā darbības joma| Visās programmēšanas valodās mums ir mainīgas piekļuves specifikatori, kas nosaka, no kurienes var piekļūt definētajam mainīgajam. Excel VBA nav izņēmums. Arī VBA ir darbības jomas specifikatori.
ByRef un ByVal argumenti | Kad arguments tiek nodots kā ByRef arguments citai apakšfunkcijai vai funkcijai, tiek nosūtīta faktiskā mainīgā atsauce. Visas izmaiņas, kas veiktas mainīgā kopijā, tiks atspoguļotas sākotnējā argumentā.
Izdzēsiet lapas bez apstiprinājuma uzvednēm, izmantojot Microsoft Excel VBA | Tā kā jūs dzēšat lapas, izmantojot VBA, jūs zināt, ko darāt. Jūs vēlaties pateikt programmai Excel nerādīt šo brīdinājumu un izdzēst sasodīto lapu.
Pievienojiet un saglabājiet jaunu darbgrāmatu, izmantojot VBA programmā Microsoft Excel 2016| Šajā kodā mēs vispirms izveidojām atsauci uz darbgrāmatas objektu. Un tad mēs to inicializējām ar jaunu darbgrāmatas objektu. Šīs pieejas priekšrocība ir tā, ka jūs varat viegli veikt darbības ar šo jauno darbgrāmatu. Piemēram, saglabāšana, aizvēršana, dzēšana utt
Parādiet ziņojumu Excel VBA statusa joslā| Excel statusa joslu var izmantot kā koda monitoru. Ja jūsu VBA kods ir garš un veicat vairākus uzdevumus, izmantojot VBA, jūs bieži atspējojat ekrāna atjaunināšanu, lai neredzētu ekrāna mirgošanu.
Izslēdziet brīdinājuma ziņojumus, izmantojot VBA programmā Microsoft Excel 2016| Šis kods ne tikai atspējo VBA brīdinājumus, bet arī palielina koda laika efektivitāti. Redzēsim, kā.
Populāri raksti:
50 Excel saīsnes, lai palielinātu produktivitāti | Ātrāk izpildiet savu uzdevumu. Šie 50 īsceļi ļaus jums strādāt vēl ātrāk programmā Excel.
Funkcija VLOOKUP programmā Excel | Šī ir viena no visbiežāk izmantotajām un populārākajām Excel funkcijām, kas tiek izmantota, lai meklētu vērtību no dažādiem diapazoniem un lapām.
COUNTIF programmā Excel 2016 | Saskaitiet vērtības ar nosacījumiem, izmantojot šo apbrīnojamo funkciju. Jums nav jāfiltrē dati, lai saskaitītu noteiktas vērtības. Skaitītāja funkcija ir būtiska, lai sagatavotu informācijas paneli.
Kā lietot SUMIF funkciju programmā Excel | Šī ir vēl viena būtiska informācijas paneļa funkcija. Tas palīdz apkopot vērtības noteiktos apstākļos.