Importeren PDF in Access

Status
Niet open voor verdere reacties.

linkav

Gebruiker
Lid geworden
13 jun 2007
Berichten
465
Goede morgen beste forum-leden,

Hoe kan ik de inhoud van een PDF inlezen in Access (ik heb geen Acrobat Pro). Of kan ik mbv Access een PDF-bestand opslagen als een TXT-bestand wat ik dan weer kan openen in Access?

Graag hoor ik van jullie.
 
Met Foxit Reader (gratis PDF-software) kan je de inhoud van een pdf selecteren en kopieren bijv naar een word-doc. Zou dus ook naar een access-file moeten kunnen.
 
Dag srpchulp,

Bedankt voor je oplossing, maar ik had dit graag vanuit Access gedaan.

Ik wil een folder doorlopen en iedere PDF inlezen en hier bepaalde zaken uit ophalen en wegschrijven in een Access database.
 
Waarin wil je de pdf importeren? In een tabel of in een formulier? Je noemt inlezen in een access database. Maar wees specifieker. In een tabel gaat echt niet lukken.
 
Laatst bewerkt:
Dat gaat sowieso nooit lukken voor iedere PDF, omdat een pdf die uit afbeeldingen bestaat sowieso nergens in kan worden uitgelezen. Access heeft geen import vanuit pdf's, dus je zult hoe dan ook je toevlucht moeten zoeken tot externe programma's. Als die commandogestuurd zijn te bedienen, dan zou je op die manier wellicht nog het proces kunnen automatiseren. Of je dat dan vanuit Access doet, of Word, maakt verder niet zoveel uit.
Wat wél belangrijk is, is het format van de verkregen tekst. Die kun je nooit 'zomaar' in een database gooien. Tenzij je daarvoor één memoveld gebruikt, waar je alles in kiepert. Maar dan lijkt mij een Word document toch een stuk handiger. Dus wat wil je eigenlijk?
 
Dag Octafish,

Het gaat om het volgende: analyses worden binnen gebracht in een labo en worden getest. De resultaten van de analyses komen in een PDF-bestand te staan.
Een PDF kunnen de resultaten zijn van 1 of meerdere analyses (gebundeld per klant).
De PDF-bestanden zijn zeker geen images. Alle resultaten van een analyse hebben steeds een titel "ANALYSERAPPORT" en op de volgende regel staat steeds het monsternr.
In Access wil ik een tabel vullen met MonsterNr en Pad+bestandsnaam van de PDF. Per MonsterNr kunnen meerdere records zijn (omdat de analyses in meerdere talen gebeuren in aparte PDF-bestanden). En een PDF-bestand kan bij meerdere MonsterNrs staan omdat 1 PDF de resultaten van meerdere analyses kan bevatten.

De PDF bestanden worden gegenereerd door software dat bij de testaparatuur hoort en hier is geen mogelijkheid om te exporteren naar een ander bestandstype.

Hopelijk is het een beetje duidelijk.
 
Via het "Scripting.FileSystemObject" object vind je verschillende mogelijkheden om een tekstbestand te manipuleren en er eventueel stukken tekst uit de recupereren om ze in een database te gebruiken.
 
Ik heb een procedure gevonden waarmee je een pdf bestand kunt uitlezen. Die heeft wel een Acrobat bibliotheek nodig.
Code:
Function getTextFromPDF(ByVal strFilename As String) As String
Dim objAVDoc As New AcroAVDoc
Dim objPDDoc As New AcroPDDoc
Dim objPage As AcroPDPage
Dim objSelection As AcroPDTextSelect
Dim objHighlight As AcroHiliteList
Dim pageNum As Long
Dim strText As String
Dim tCount As Long

    If objAVDoc.Open(strFilename, "") Then
        Set objPDDoc = objAVDoc.GetPDDoc
        For pageNum = 0 To objPDDoc.GetNumPages() - 1
            Set objPage = objPDDoc.AcquirePage(pageNum)
            Set objHighlight = New AcroHiliteList
            objHighlight.Add 0, 10000 ' Adjust this up if it's not getting all the text on the page
            Set objSelection = objPage.CreatePageHilite(objHighlight)
            If Not objSelection Is Nothing Then
                For tCount = 0 To objSelection.GetNumText - 1
                    strText = strText & objSelection.GetText(tCount)
                Next tCount
            End If
        Next pageNum
        objAVDoc.Close 1
    End If
    getTextFromPDF = strText

End Function

Wat er verder met de inhoud van de pdf gebeurt, kan ik zo uiteraard niet bekijken, daarvoor zouden we een pdfje moeten zien.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan