Excel VBA GetObject

VBA GetObject, kao naziv, čini se kao da moramo stvoriti kod za dobivanje ili stvaranje objekta. Ali u stvari, to je postupak dobivanja tablica iz bilo koje riječi u excel datoteku. U VBA GetObject dohvaćamo podatke iz datoteke s riječima tako što mjesto na kojem se čuvaju stavljamo i dodajemo bilo koji broj tablica iz te riječi na list Excela.

Sintaksa VBA GetObject

Sintaksa je objašnjena kao što je prikazano u nastavku:

  • PathName = Ovdje ćemo dati put Word dokumentu gdje se čuva. Ovo polje nije obavezno.
  • Class = Ovdje moramo definirati funkciju Class of Object. Ovaj je previše izborni. Ali ako u sintaksi ne definiramo PathName, tada će Klasa morati definirati.

Oba argumenta sintakse nisu obavezna. Ali bilo koga od njih treba definirati.

Ovdje ćemo koristiti appname.objecttype za definiranje klase. AppName će biti aplikacija ili vrsta datoteke iz koje ćemo preuzimati podatke, a Objecttype će biti vrsta datoteke koju ćemo koristiti.

Primjer funkcije GetObject u Excelu VBA

Vidjet ćemo kako dohvatiti podatke koji su u obliku tablice u riječnom dokumentu i dodati ih u radni list Excela.

Možete preuzeti ovaj VBA GetObject Excel predložak ovdje - VBA GetObject Excel predložak

Za to su nam potrebni takvi podaci u datoteci s riječima. Ovdje u nastavku imamo datoteku riječi koja sadrži 2 tablice imena zaposlenika i ID zaposlenika.

Spremili smo ovu datoteku negdje u naš lokalni pogon kojem je lako pristupiti. Slijedite dolje navedene korake za upotrebu funkcije GetObject u Excelu VBA.

Korak 1: Otvorite prozor VBA i otvorite modul na kartici izbornika Umetanje, kao što je prikazano u nastavku.

Korak 2: U novootvoreni modul napišite podkategoriju VBA GetObject ili prema potrebi možete odabrati bilo koje drugo ime.

Korak 3: Prvo definirajte varijablu 2 objekta za pristup Objektu koji je pripremio VBA GetObject.

Korak 4: Trebat će nam druga varijabla za koju ćemo pohraniti lokaciju Filea kao String.

Korak 5: Da ne bi došlo do prekida ako dođe do pogreške, nastavit ćemo nastaviti s sljedećim korakom.

Korak 6: Sada bismo koristili funkciju GetObject i postavili je kao WordFile objekt. Ako Path držimo prazan, klasu ćemo definirati kao Word.Application gdje je Word aplikacija Microsofta.

Korak 7: Da izbjegnemo pogrešku broj 429 koja se obično dogodi u ovom slučaju, izbrisat ćemo je kad se dogodi.

Korak 8: Sada napravite vidljivu napravljenu varijablu WordFile vidljivu.

9. korak: Kao što nismo definirali put, tako ćemo dodijeliti lokaciju datoteke StrDoc zajedno s nastavkom.

Korak 10: Ako u datoteci s riječima nismo ništa pronašli, trebala bi nam stići poruka koja kaže da "Nema podataka dostupnih" ili "Dokument nije pronađen". A to bi se učinilo u petlji If-End If.

11. korak: Sada aktivirajte Word datoteku.

12. korak: Učinite isti postupak za postavljanje WordDoca. Ako WordDoc nije ništa, otvorit ćemo datoteku s mjesta na kojem se čuva.

Korak 13: Sada ćemo morati definirati varijable koje će nam pomoći u pristupu tablici iz Wordova dokumenta. Po tome ćemo stvoriti tablicu s redovima i stupacima.

14. korak: Kao što svi znamo da je vrh stanica dvodimenzionalan. Dakle, počevši od prve ćelije, trebat će nam 2 varijabla gdje ćemo definirati lokaciju odakle trebamo pokrenuti našu tablicu u Excelu. Ovdje smo razmotrili taj položaj na (1, 1) koji se nalazi u prvoj ćeliji lista.

Korak 15: U ovoj fazi trebamo provjeriti broj tablica u Word datoteci. A ako nema tablica, trebali bismo dobiti poruku za to.

Korak 16: U ovom koraku trebamo pristupiti tablici iz Wordovog dokumenta i preslikati je u Excel datoteku. Za to ćemo koristiti petlju For za svaki red i stupac.

Korak 17: Napokon ćemo napustiti dokument nakon što doda podatke iz riječi u excel datoteku bez spremanja datoteke.

Korak 18: Sada pokrenite gornji kôd pritiskom na tipku F5 ili klikom na gumb Reproduciraj.

Vidjet ćemo, podaci koje smo vidjeli na početku članka, koji su bili odvojeni u dvije različite tablice, sada su dodani u jednoj tablici u excel listu.

Ispod je potpuni kod u jednom slijedu:

Kodirati:

 Pod VBA_GetObject () Dim WordFile kao objekt Dim WordDoc kao objekt Dim StrDoc kao string na pogrešci Nastavi Dalje postavi WordFile = GetObject (, "Word.Application") ako je Err.Number = 429 onda Err.Clear postavi WordFile = CreateObject ("Word. Primjena ") Kraj ako WordFile.Visible = Istina StrDoc =" D: \ Ulaz \ Test.docx "Ako Dir (StrDoc) =" "Tada MsgBox StrDoc & vbCrLf &" nije na navedenom putu "& vbCrLf &" C: \ Ulazno mjesto ", vbExclamation, " Ime dokumenta nije pronađeno "Izlazite s potkraj ako je WordFile.Activate Set WordDoc = WordFile.Documents (StrDoc) Ako WordDoc nije ništa onda postavite WordDoc = WordFile.Documents.Open (" D: \ Input \ Test ". docx ") WordDoc.Activate Dim Tble kao cijeli broj Dim RowWord kao dugi dim ColWord kao cijeli broj Dim A kao dugi dim B kao dugi A = 1 B = 1 s WordDoc Tble = WordDoc.Tables.Count ako Tble = 0 tada MsgBox" Nema tablica Dostupni ", vbExclamation, " Ništa za uvoz "Izlazite iz potkraj ako je za i = 1 Za Tble s .Tables (i) Za RowWord = 1 do .Rows.Count za ColWord = 1 do. Column.Count ćelije (A, B) = Radni listFunctio n.Clean (.cell (RowWord, ColWord) .Range.Text) B = B + 1 Sljedeći ColWord B = 1 A = A + 1 Sljedeći kraj retka riječi sa sljedećim krajem s WordDoc.Zatvorite Spremanje: = False WordFile.Quit Set WordDoc = Ništa nije postavljeno WordFile = Ništa kraj Sub 

Pros za Excel VBA GetObject

  • Vrlo je koristan u uvozu velikog broja podataka iz word datoteke u excel datoteku.
  • Možemo uvesti bilo koju vrstu podataka iz bilo koje vrste datoteka samo mijenjanjem ekstenzije.

Stvari koje treba zapamtiti

  • Prije pokretanja koda zatvorite sve datoteke s riječima.
  • Navedite odgovarajuću ekstenziju datoteci koja se koristi.
  • GetObject se ne može koristiti za pristup referenci na klasu.

Preporučeni članci

Ovo je vodič za VBA GetObject. Ovdje smo raspravljali o tome kako koristiti GetObject funkciju u VBA za dohvaćanje podataka iz datoteke s datotekama u excel listu zajedno s praktičnim primjerom i preuzeti Excel predložak. Možete i pregledati naše druge predložene članke -

  1. VBA GetOpenFileName
  2. KPI nadzorna ploča u Excelu
  3. Otvorena radna knjiga VBA
  4. Broj riječi Excela
  5. Excel VBA o pogrešci Nastavite dalje

Kategorija: