Miten poimia tiettyjä tietoja PDF-tiedostosta Exceliin VBA: n avulla?

  • Jaa Tämä
Hugh West

Yksi yleisistä ongelmista, joita useimmat meistä kohtaavat jokapäiväisessä elämässään, on se, miten poimia joitakin tiettyjä tietoja tietystä tiedostosta. PDF tiedostoon Excel-taulukkoon käyttämällä VBA Tässä artikkelissa näytän sinulle, miten tämä onnistuu mukavasti sopivien esimerkkien ja kuvien avulla.

Ote tiettyjä tietoja PDF-tiedostosta Exceliin VBA:n avulla (Pikakatselu)

 Sub Extract_Data_from_PDF() Set MyWorksheet = ActiveWorkbook.Worksheets("Sheet1") Application_Path = "C:\Program Files\Adobe\Acrobat DC\Acrobat\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 

Lataa harjoituskirja

Lataa tämä harjoituskirja, jotta voit harjoitella tätä artikkelia lukiessasi.

Pura tiedot PDF.xlsm-tiedostosta

Yleiskatsaus erityisten tietojen poimimiseen PDF-tiedostosta Exceliin VBA: n avulla (vaiheittainen analyysi)

Siirrytään siis viivyttelemättä tämänpäiväiseen pääkeskusteluumme. Tässä meillä on yksi PDF tiedosto nimeltä vakionormitaulukko.pdf joka sisältää normaalijakauman taulukon.

Olemme avanneet työarkin nimeltä Sheet1 Excel-työkirjaan, johon kopioidaan tiedot Excelin PDF tiedosto.

Nyt näytän, että voit kopioida dataa osoitteesta PDF tiedostoon Excel-taulukkoon vaiheittaisen analyysin avulla.

⧪ Vaihe 1: Tarvittavien syötteiden ilmoittaminen

Ensin on ilmoitettava tarvittavat syötteet. Näitä ovat esimerkiksi työarkin nimi, solujen alue, sen sovelluksen sijainti, jonka kautta PDF tiedosto avataan ( Adobe Reader tässä esimerkissä), ja sijainnin sijainti PDF tiedosto.

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

⧪ Vaihe 2: PDF-tiedoston avaaminen (VBA Shell -komennon avulla)

Seuraavaksi meidän on kutsuttava VBA Shell-toiminto avataksesi PDF tiedosto.

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

⧪ Vaihe 3 (valinnainen): Odota muutama hetki.

Tämä on vapaaehtoista. Mutta kun sinulla on pitkä tehtäväsarja, on parempi odottaa hetki, jotta tietokone voi saattaa aikaisemman tehtävän onnistuneesti loppuun ja aloittaa uuden tehtävän.

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

Tässä odotamme 30 sekuntia, mutta voit halutessasi odottaa kauemmin.

⧪ Vaihe 4: SendKeysin käyttäminen tietojen kopioimiseen PDF-tiedostosta

Tämä on luultavasti tärkein tehtävä. Käytämme apuna 3 SendKeys:

  • ALT + V, P, C: Tämä on pääasiassa vierityksen mahdollistamiseksi ikkunassa PDF Pienten tiedostojen kohdalla tämä ei ole tarpeen, mutta suurten tiedostojen kohdalla tämä on tarpeen koko tiedoston valitsemiseksi.
  • CTRL + A: Tällä valitaan koko tiedosto.
  • CTRL + C : Valitun tiedoston kopioiminen.

Näin ollen koodirivit ovat:

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

⧪ Vaihe 5: Tietojen liittäminen Excel-tiedostoon

Olemme avanneet erityisen PDF tiedosto ja kopioitu tiedot kyseisestä tiedostosta. Nyt meidän on liimattava nämä tiedot haluttuun työarkin alueeseen.

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

Olen liittänyt tähän solun A1 Voit tietenkin liittää sen haluamallasi tavalla mihin tahansa muualle.

⧪ Vaihe 6 (valinnainen): PDF-tiedoston sulkeminen (sovelluksen lopettaminen)

Lopuksi on parempi sulkea käynnissä oleva ohjelma, kun olet lopettanut tietojen poimimisen.

 Kutsu Shell("TaskKill /F /IM Acrobat.exe", vbHide) 

Lue lisää: Kuinka poimia tietoja PDF-tiedostosta Exceliin (4 sopivaa tapaa)

Samanlaisia lukemia

  • Kuinka viedä tietoja täytettävästä PDF-tiedostosta Exceliin (nopeat vaiheet)?
  • PDF-kommenttien vieminen Excel-taulukkoon (3 nopeaa temppua)

Esimerkki tiettyjen tietojen poimimisesta PDF-tiedostosta Exceliin VBA:n avulla

Olemme nähneet vaiheittaisen menettelyn tietojen poimimiseksi tiedostosta. PDF tiedostoon Excel-taulukkoon käyttämällä VBA .

Siksi täydellinen VBA koodi tietojen poimimiseksi PDF tiedosto nimeltä standardnormaltable osoitteeseen Sheet1 on:

VBA-koodi:

 Sub Extract_Data_from_PDF() Set MyWorksheet = ActiveWorkbook.Worksheets("Sheet1") Application_Path = "C:\Program Files\Adobe\Acrobat DC\Acrobat\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 

Lähtö:

Suorita tämä koodi, ja se kopioi datan tiedostosta PDF tiedosto nimeltä "standardnormaltable" laskentataulukkoon nimeltä "Sheet1" aktiivisessa työkirjassa.

Lue lisää: Kuinka poimia tietoja useista PDF-tiedostoista Exceliin (3 sopivaa tapaa)

Muistettavat asiat

  • Työkirja, johon kopioidaan tiedot työkirjasta PDF tiedosto on pidettävä auki koodin suorittamisen aikana. Muuten sinun on käytettävä työkirjan nimeä koodissa.
  • Koodin sisällä käytettävän sovelluksen nimi ( Adobe Acrobat DC täällä) on oltava asennettuna tietokoneellesi, muuten saat virheilmoituksen.
  • Kun kyseessä ovat suuret tietokokonaisuudet PDF tiedostojen kopioiminen ja liittäminen voi kestää jonkin aikaa, joten ole kärsivällinen ja odota, kunnes prosessi päättyy onnistuneesti.

Päätelmä

Tämä on siis prosessi, jossa poimitaan tiettyjä tietoja tietystä PDF tiedostoon Excel-taulukkoon käyttämällä VBA Onko sinulla kysyttävää? Kysy rohkeasti meiltä. Äläkä unohda vierailla sivustollamme. ExcelWIKI lisää viestejä ja päivityksiä.

Hugh West on erittäin kokenut Excel-kouluttaja ja analyytikko, jolla on yli 10 vuoden kokemus alalta. Hän on koulutukseltaan laskentatoimen ja rahoituksen kandidaatti sekä kauppatieteiden maisteri. Hughilla on intohimo opettamiseen, ja hän on kehittänyt ainutlaatuisen opetusmenetelmän, jota on helppo seurata ja ymmärtää. Hänen asiantuntemuksensa Excelistä on auttanut tuhansia opiskelijoita ja ammattilaisia ​​maailmanlaajuisesti parantamaan taitojaan ja menestymään urallaan. Blogissaan Hugh jakaa tietämyksensä maailman kanssa tarjoamalla ilmaisia ​​Excel-opetusohjelmia ja verkkokoulutusta auttaakseen yksilöitä ja yrityksiä saavuttamaan täyden potentiaalinsa.