Hogyan lehet konkrét adatokat kivonni a PDF-ből az Excel-be a VBA használatával

  • Ossza Meg Ezt
Hugh West

Az egyik leggyakoribb probléma, amivel a legtöbbünknek a mindennapi életben szembe kell néznie, hogy hogyan lehet bizonyos adatokat kinyerni egy PDF fájlt egy Excel munkalapra a VBA Ebben a cikkben megfelelő példákkal és illusztrációkkal mutatom meg, hogy ezt hogyan érheti el kényelmesen.

Konkrét adatok kivonása PDF-ből Excel-be a VBA használatával (gyorsnézet)

 Sub Extract_Data_from_PDF() Set MyWorksheet = ActiveWorkbook.Worksheets("Sheet1") Application_Path = "C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe" PDF_Path = "E:\ExcelWIKI\standardnormaltable.pdf" Shell_Path = Application_Path & " """ & PDF_Path & """" Call Shell(pathname:=Shell_Path, windowstyle:=vbNormalFocus) Application.Wait Now + TimeValue("0:00:03") SendKeys "%vpc"SendKeys "^a" SendKeys "^c" MyWorksheet.Range("A1").PasteSpecial Paste:=xlPasteAll Call Shell("TaskKill /F /IM Acrobat.exe", vbHide) End Sub 

Gyakorlati munkafüzet letöltése

Töltse le ezt a gyakorlati munkafüzetet, hogy gyakorolhasson, miközben ezt a cikket olvassa.

Adatok kivonása PDF.xlsm fájlból

Egy áttekintés a konkrét adatok PDF-ből Excel-be történő kivonatolásához a VBA használatával (lépésről lépésre történő elemzés)

Szóval, további késlekedés nélkül térjünk rá a mai fő témánkra. Itt van nekünk egy PDF nevű fájl standardnormaltable.pdf amely a normális eloszlás táblázatát tartalmazza.

És megnyitottunk egy munkalapot Sheet1 egy Excel munkafüzetben, ahová az adatokat másoljuk a PDF fájl.

Most megmutatom, hogy adatokat másolhatsz a PDF fájlt az Excel munkalapra lépésről lépésre történő elemzéssel.

⧪ 1. lépés: A szükséges bemenetek deklarálása

Először is meg kell adnia a szükséges bemeneteket. Ezek közé tartozik a munkalap neve, a cellák tartománya, az alkalmazás helye, amelyen keresztül a PDF fájl megnyílik ( Adobe Reader ebben a példában), és a helyét a PDF fájl.

 Set MyWorksheet = ActiveWorkbook.Worksheets("Sheet1") Application_Path = "C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe" PDF_Path = "E:\ExcelWIKI\standardnormaltable" 

⧪ 2. lépés: A PDF-fájl megnyitása (a VBA Shell parancs használatával)

Ezután meg kell hívnunk a VBA Shell funkció a PDF fájl.

 Shell_Path = Application_Path & " """" & PDF_Path & """" Call Shell(pathname:=Shell_Path, windowstyle:=vbNormalFocus) 

⧪ 3. lépés (opcionális): Várjon néhány pillanatot.

Ez opcionális. De ha hosszú feladatsor van, jobb, ha vársz néhány pillanatot, hogy a számítógép sikeresen befejezhesse a korábbi feladatot, és elkezdhessen egy új feladatot.

 Application.Wait Now + TimeValue("0:00:03") 

Itt 30 másodpercet várunk, de ha akarod, többet is várhatsz.

⧪ 4. lépés: SendKeys használatával adatokat másolhatunk a PDF-fájlból

Ez valószínűleg a legfontosabb feladat. A 3 SendKeys:

  • ALT + V, P, C: Ez főleg a görgetés engedélyezésére szolgál a PDF Kisebb fájlok esetén ez nem szükséges, de nagyobb fájlok esetén a teljes fájl kiválasztásához szükséges.
  • CTRL + A: Ez a teljes fájl kiválasztására szolgál.
  • CTRL + C : A kiválasztott fájl másolásához.

Ezért a kódsorok a következők lesznek:

 SendKeys "%vpc" SendKeys "^a" SendKeys "^c" 

⧪ 5. lépés: Az adatok beillesztése az Excel fájlba

Megnyitottuk a konkrét PDF fájlt, és bemásoltuk az adatokat a fájlból. Most be kell illesztenünk az adatokat a munkalap kívánt tartományába.

 MyWorksheet.Range("A1").PasteSpecial Paste:=xlPasteAll 

Itt, beillesztettem a cellába A1 Természetesen máshová is beillesztheti, ha szeretné.

⧪ 6. lépés (opcionális): A PDF-fájl bezárása (az alkalmazás befejezése)

Végül, miután végzett az adatok kinyerésével, jobb, ha bezárja a futó programot.

 Hívja a Shell("TaskKill /F /IM Acrobat.exe", vbHide) hívását. 

Bővebben: Hogyan lehet az adatokat PDF-ből Excel-be kivonatolni (4 megfelelő mód)

Hasonló olvasmányok

  • Hogyan exportálhat adatokat kitölthető PDF-ből Excelbe (gyors lépésekkel)
  • Hogyan exportálhat PDF-kommentárokat Excel-táblázatba (3 gyors trükk)

Példa konkrét adatok kivonására a PDF-ből az Excel-be a VBA használatával

Láttuk, hogyan lehet lépésről lépésre adatokat kinyerni egy PDF fájlt egy Excel munkalapra a VBA .

Ezért a teljes VBA kód az adatok kinyeréséhez a PDF nevű fájl standardnormaltable a címre. Sheet1 lesz:

VBA-kód:

 Sub Extract_Data_from_PDF() Set MyWorksheet = ActiveWorkbook.Worksheets("Sheet1") Application_Path = "C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe" PDF_Path = "E:\ExcelWIKI\standardnormaltable.pdf" Shell_Path = Application_Path & " """ & PDF_Path & """" Call Shell(pathname:=Shell_Path, windowstyle:=vbNormalFocus) Application.Wait Now + TimeValue("0:00:03") SendKeys "%vpc"SendKeys "^a" SendKeys "^c" MyWorksheet.Range("A1").PasteSpecial Paste:=xlPasteAll Call Shell("TaskKill /F /IM Acrobat.exe", vbHide) End Sub 

Kimenet:

Futtassuk ezt a kódot. És az adatokat átmásolja a PDF nevű fájl "standardnormaltable" a következő munkalapra "Sheet1" az aktív munkafüzetben.

Bővebben: Hogyan lehet több PDF-fájlból kivonatolni az adatokat az Excel-be (3 megfelelő mód)

Emlékezetes dolgok

  • Az a munkafüzet, amelybe az adatokat másolni fogja a PDF fájlt a kód futtatása közben nyitva kell tartani. Ellenkező esetben a kódban a munkafüzet nevét kell használnia.
  • Az alkalmazás neve, amelyet a kódon belül használ ( Adobe Acrobat DC itt) telepítve kell lennie a számítógépén, különben hibaüzenetet kap.
  • Nagy adathalmazok esetén PDF fájlokat, a folyamat eltarthat egy ideig, amíg az összes adatot átmásolja és beilleszti. Legyen türelmes, és várjon, amíg a folyamat sikeresen befejeződik.

Következtetés

Ez tehát az a folyamat, amelynek során néhány konkrét adatot nyerünk ki egy PDF fájlt egy Excel munkalapra a VBA Van bármilyen kérdése? Nyugodtan kérdezzen minket. És ne felejtse el meglátogatni oldalunkat. ExcelWIKI további posztokért és frissítésekért.

Hugh West nagy tapasztalattal rendelkező Excel-oktató és elemző, több mint 10 éves tapasztalattal az iparágban. Számvitel és pénzügy szakos alapdiplomát, valamint üzleti adminisztrációból mesterképzést szerzett. Hugh szenvedélye a tanítás, és egyedülálló tanítási megközelítést dolgozott ki, amely könnyen követhető és érthető. Az Excelben szerzett szakértői tudása világszerte több ezer diáknak és szakembernek segített abban, hogy készségeiket és karrierjüket kiválóan teljesítsék. Hugh blogján keresztül megosztja tudását a világgal, ingyenes Excel-oktatóanyagokat és online képzéseket kínálva, hogy segítse az egyéneket és a vállalkozásokat teljes potenciáljuk kibontakoztatásában.