Sisällysluettelo
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-tiedostostaYleiskatsaus 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ä.