Excel VBA GetObject

Úgy tűnik, hogy a VBA GetObject neve neve, hogy létre kell hoznunk egy kódot egy objektum megszerzéséhez vagy létrehozásához. Valójában ez a folyamat, amellyel a táblákat bármilyen szótől Excel fájlokká szerezhetjük. A VBA GetObject programban beolvassa az adatokat egy szófájlból azáltal, hogy megőrzi a tárolási helyet, és tetszőleges számú táblát csatol az adott Wordből az Excel laphoz.

A VBA GetObject szintaxisa

A szintaxist az alábbiak szerint magyarázzuk:

  • PathName = Itt megadjuk az utat a Word dokumentumhoz, ahol megőrzik. Ez a mező nem kötelező.
  • Class = Itt meg kell határoznunk az Object Class funkciót. Ez túl opcionális. De ha nem definiáljuk a PathName-t a szintaxisban, akkor az Class-nak meg kell határoznia.

A szintaxis mindkét érve nem kötelező. De bárkit meg kell határozni.

Itt az appname.objecttype- t használjuk az osztály meghatározására. Az AppName az alkalmazás vagy a fájltípus, ahonnan lekérjük az adatokat, az Objecttype pedig egy olyan fájl alkalmazás, amelyet használunk.

Példa a GetObject függvényre az Excel VBA-ban

Látni fogjuk, hogyan lehet betölteni az adatokat, amelyek táblázatos formában vannak szódokumentumban, és ezeket az adatokat az Excel munkalaphoz csatolhatjuk.

Itt letöltheti ezt a VBA GetObject Excel sablont - VBA GetObject Excel sablon

Ehhez ilyen adatokra van szükség a word fájlban. Az alábbiakban van egy szófájl, amelyben 2 táblázat található az Alkalmazott neve és az Alkalmazói azonosító között.

Ezt a fájlt valahova mentettük a helyi meghajtóba, amelyhez könnyen hozzáférhetünk. Kövesse az alábbi lépéseket a GetObject funkció használatához az Excel VBA alkalmazásban.

1. lépés: Lépjen a VBA ablakba, és nyissa meg a modult a Beszúrás menü lapon, az alább látható módon.

2. lépés: Az újonnan megnyílt modulban írja be a VBA GetObject alkategóriáját, vagy válasszon más nevet igénye szerint.

3. lépés: Először határozza meg a 2 objektum változót a VBA GetObject által készített objektum eléréséhez.

4. lépés: Szükségünk lenne egy másik változóra, amelyre a fájl helyét stringként tároljuk.

5. lépés: Hiba esetén a szünet elkerülése érdekében folytatjuk a következő lépést.

6. lépés: Most a GetObject funkciót használjuk, és WordFile objektumként állítjuk be . Ha az elérési utat üresen tartjuk, akkor az osztályt Word.Applicationként definiáljuk, ahol a Word a Microsoft alkalmazása.

7. lépés: A 429-es hibakód elkerülése érdekében, amely általában ebben az esetben fordul elő, töröljük, amint történik.

8. lépés: Most tegye láthatóvá a létrehozott WordFile objektumváltozót.

9. lépés: Mivel még nem határoztuk meg az elérési utat, ezért a fájl helyét hozzárendeljük a StrDoc- hoz a kiterjesztéssel együtt.

10. lépés: Ha nem találtunk semmit a szófájlban, akkor üzenetet kell kapnunk, amely felszólítja a következőt: „Nincs adat elérhető” vagy „A dokumentum nem található”. És ezt megtennénk az If-End If hurokban.

11. lépés: Most aktiválja a Word fájlt.

12. lépés: Tegye ugyanazt az eljárást a WordDoc beállításához. Ha a WordDoc semmi, akkor a fájlt a tárolás helyéről nyitjuk meg.

13. lépés: Most meg kell határoznunk azokat a változókat, amelyek elősegítik a táblázat elérését a Word dokumentumból. Ezzel létre fogunk hozni egy táblázatot sorokkal és oszlopokkal.

14. lépés: Mint mindannyian tudjuk, a sejtek csúcsa kétdimenziós. Tehát az 1. cellából kiindulva szükségünk lenne 2 változóra, ahol meghatározzuk azt a helyet, ahonnan el kell indítanunk táblázatot az Excelben. Itt megvizsgáltuk azt a helyzetet (1, 1), amely a lap első cellájában van.

15. lépés: Ebben a szakaszban ellenőriznünk kell a Word fájl táblázatainak számát. És ha nincsenek táblák, akkor erre üzenetet kell kapnunk.

16. lépés: Ebben a lépésben be kell töltenünk a táblát a Word dokumentumból, és le kell töltenünk azt az Excel fájlban. Ehhez minden sorban és oszlopban a For hurkot fogjuk használni.

17. lépés: Végül kilépünk a dokumentumból, miután az adatokat Word-ből excel fájlba illesztette anélkül, hogy a fájlt mentené.

18. lépés: Most futtassa a fenti kódot az F5 billentyű megnyomásával vagy a Play gombra kattintással.

Látni fogjuk, hogy azokat az adatokat, amelyeket a cikk elején láttunk, és amelyek két különálló táblában külön voltak, most az Excel táblázata egyetlen táblázatában található.

Az alábbiakban látható a teljes kód egy sorozatban:

Kód:

 Sub VBA_GetObject () Dim WordFile mint Object Dim WordDoc As Object Dim StrDoc As String On Error Folytatás Következő Set WordFile = GetObject (, "Word.Application") Ha Err.Number = 429 Akkor Err.Clear Set WordFile = CreateObject ("Word. Alkalmazás ") Vége, ha a WordFile.Visible = True StrDoc =" D: \ Input \ Test.docx "Ha Dir (StrDoc) =" "Akkor MsgBox StrDoc & vbCrLf &" Nem található a megadott útvonalon "& vbCrLf &" C: \ Beviteli hely ", vbExclamation, " A dokumentum neve nem található "Kilépés az alsó végből, ha WordFile.Aktiválja a Set WordDoc = WordFile.Documents (StrDoc) beállítást, ha a WordDoc nincs semmi, akkor állítsa be a WordDoc = WordFile.Documents.Open (" D: \ Input \ Test. docx ") WordDoc.Aktiválja a Dim Tble egész számként Dim RowWord Hosszú Dim ColWord Egészként Dim A Hosszú Dim B Ha hosszú A = 1 B = 1 WordDoc Tble = WordDoc.Tables.Count If Tble = 0 majd MsgBox" Nincs táblázat Elérhető ", vbExclamation, " Nincs importálási lehetőség "Kilépés az alsó végbõl, ha i = 1-hez kell táblázni .Táblázatokkal (i) RowWord = 1 -hez. Rows.Count -hoz ColWord = 1 -hoz .Columns.Count cellákhoz (A, B) = MunkalapFunctio n.Clean (.cell (RowWord, ColWord) .Range.Text) B = B + 1 Következő ColWord B = 1 A = A + 1 Következő RowWord Vége a következő véggel a WordDoc.Close Savechanges segítségével: = Hamis WordFile.Quit A WordDoc beállítása = Nothing Set WordFile = Semmi sem vége Sub 

Az Excel VBA GetObject előnyei

  • Nagyon hasznos a nagy adathalmaz importálása a word fájlból az Excel fájlba.
  • Bármilyen adatot bármilyen fájlból importálhatunk, azzal a kiterjesztés megváltoztatásával.

Dolgok, amikre emlékezni kell

  • A kód futtatása előtt zárja be az összes szófájlt.
  • Adja meg a használt fájl megfelelő kiterjesztését.
  • A GetObject nem használható az osztályra való hivatkozás eléréséhez.

Ajánlott cikkek

Ez a VBA GetObject útmutatója. Itt megvitatjuk, hogy hogyan lehet a GetObject funkciót használni a VBA-ban a szófájlok adatainak az Excel lapba való beolvasásához, valamint egy praktikus példát és letölthető Excel sablont. Megnézheti más javasolt cikkeinket -

  1. VBA GetOpenFileName
  2. KPI Irányítópult Excelben
  3. VBA munkafüzet megnyitva
  4. Excel Word Count
  5. Excel VBA hiba esetén folytatódik

Kategória: