Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1692to1696
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

PDF -Dateien umbennen

PDF -Dateien umbennen
16.05.2019 20:08:30
markus
Hallo liebe Forumsmitglieder,
habe eine etwas ungewöhnliche heraus forderung.
Kann mann aus Excel heraus PDF-Dateien die in einem Verzeichnis gespeichert sind einen Text extrahieren z.B. RechnungsNr und KundenNr und die PDF-Datei so umbennen.
z.B. RechnungsNr_XXXXXXXXXXXX_KundenNr_XXXXXXXXXXXXX.pdf
Die PDF-Dateien haben Fortlaufende Nr. die aus einem anderen System kommen.
die RechnungsNr und KundenNr sind nicht immer an der gleichen Position in der PDF-Datei.
Es gibt zwar einige Tools für sowas, die aber leider nicht zuferlässig sind.
Wenn das nicht möglich ist, oder einer einen Tipp für ein zuferlässiges Tool, hat sich die Frage erledigt.
Danke für eure Hilfe

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Word?
16.05.2019 20:16:42
Fennek
Hallo,
versuche die PDF mit Word oder LibreOffice/OpenOffice zu öffnen. Wenn das geht sehen wir weiter.
mfg
AW: PDF -Dateien umbennen
16.05.2019 20:17:24
Sepp
Hallo Markus,
das kann man nicht generell beantworten, da es von der PDF-Datei bzw. dem Programm mit der die Datei erstellt wurde abhängt.
Eine Beispiel PDF-Datei wäre hilfreich.
AW: PDF -Dateien umbennen
16.05.2019 20:40:51
markus
Hallo,
die PDF-Dateien waren in Papierform und sind über einen Scanner als PDF eigescannt, und in einem Datensystem gespeichert.
Hier werden automatisch Fortlaufende Nr vergeben.
https://www.herber.de/bbs/user/129824.zip
Anzeige
AW: PDF -Dateien umbennen
17.05.2019 11:20:25
mumpel
Hallo!
Hast Du Adobe Acrobat zur Verfügung? Solange es OCR-Scans sind müsste es leicht funktionieren.
Gruß, René
AW: PDF -Dateien umbennen
17.05.2019 11:27:36
marcus
Hallo,
Ja Adobe Acrobat DC habe ich
Gruß, marcus
AW: PDF -Dateien umbennen
17.05.2019 11:59:31
mumpel
Dann setze einen Verweis auf "Adobe Acrobat X.0 Type Library" (das X steht für die Acrobat-Version). Dann kannst Du folgenden Code probieren. Allerdings musst Du mit den Zeilenzahlen experimentieren, da "sinnlos" ausgelesen wird (Beim Namen z.B. wird das "P" in eine Zeile geschrieben und "eter" in eine neue Zeile. Bei der Rechnungsnummer werden "AS" und die Nummer jeweils in eine eigene Zeile eingelesen). Ob das am PDF-Format liegt oder am Scan weiß ich nicht.
Option Explicit

Public Sub SeiteninhalteAusgeben()
On Error GoTo ende
    Dim objDocument As Acrobat.AcroPDDoc
    Dim objPage As Acrobat.AcroPDPage
    Dim objSelect As Acrobat.AcroPDTextSelect
    Dim objRect As Acrobat.AcroRect
    Dim objPoint As Acrobat.AcroPoint
    Dim lngNumText As Long
    Dim i As Long
    Dim varRechnungsnummer() As Variant
    Dim strText As String
    Dim lngZeilen As Long
    Dim lngCounter As Long
    Set objDocument = New Acrobat.AcroPDDoc

    With objDocument
        .Open Environ("USERPROFILE") & "\Desktop\10000.pdf"
        
        For i = 0 To .GetNumPages - 1
            Set objPage = .AcquirePage(i)
            Set objPoint = objPage.GetSize
            Set objRect = New Acrobat.AcroRect
            objRect.Left = 0
            objRect.Top = objPoint.y
            objRect.Right = objPoint.x
            objRect.bottom = 0
            
            Set objSelect = objDocument.CreateTextSelect(i, objRect)

           lngCounter = 0
            For lngNumText = 1 To objSelect.GetNumText
                Redim Preserve varRechnungsnummer(0 To lngCounter)
                               varRechnungsnummer(lngCounter) = objSelect.GetText(lngNumText - 1)
                               lngCounter = lngCounter + 1
            Next lngNumText
        Next i
        .Close
    End With
    
    For lngZeilen = 0 To Ubound(varRechnungsnummer)
       If Mid(varRechnungsnummer(lngZeilen), 1, 8) = "Rechnung" Then
          MsgBox "Rechnungsnummer lautet: " & _
                 varRechnungsnummer(lngZeilen + 1) & _
                 varRechnungsnummer(lngZeilen + 2)
          Exit Sub
       End If
    Next
ende:
End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:René Holtz

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


Anzeige
Umbennen mit Name-Funktion
17.05.2019 12:04:09
mumpel
Dateien umbennen kann man mit der Name-Funktion. Z.B.: Name "C:\Test.pdf" As "C:\Neu.pdf"
AW: Umbennen mit Name-Funktion
17.05.2019 12:51:23
marcus
Hallo mumpel,
Danke erst einmal für deine Ausarbeitung,
ich kann das jetzt noch nicht testen, melde mich aber sobald ich den Code getestet habe.
Ich habe nur gesehen dass du das für eine Datei vorgesehen hast, ich habe aber meistens tausende z.B.
10000
20000
30000
40000
50000
60000... die unbenannt werden sollen.
With objDocument
.Open Environ("USERPROFILE") & "\Desktop\10000.pdf"
Gruß, marcus
AW: Umbennen mit Name-Funktion
17.05.2019 13:10:43
mumpel
Dann müsste man eine Schleife drumrumbauen. Da bräuchten wir mehr Testdateien. Allerdings habe ich derzeit ein Problem mit dem Umbenennen (Meldung: "Fehler beim Zugriff auf Pfad/Datei"), da muss ich mal schauen was sich machen lässt, und woran das liegen könnte.
Anzeige
AW: Umbennen mit Name-Funktion
19.05.2019 18:52:47
marcus
Hallo mumpel,
habe jetz mal drei PDF Dateien mit verschidedenen Positionen der RechnungsNr bzw. Kunden-ID festgelegt und hochgeladen. Da die Positionen in den PDF Dateien unterschiedlich sein kann und die Bezeichnung auch variiert z.B. Rechnungsnummer o. RechnungsNr und Kunden-ID o. Kunden-Nr, währe es Super wenn man die Begriffe in Excel in einer Spalte eingeben könnte und diese nach den Begriffen in der PDF Sucht und dann mit Namen, kann auch ein Kürzel sein z.B. RNr_XXXXXXXXXX_KuNr_XXXXXXXXXX.pdf speichert.
https://www.herber.de/bbs/user/129874.zip
Gruß, marcus
Anzeige
AW: Umbennen mit Name-Funktion
19.05.2019 18:52:58
marcus
Hallo mumpel,
habe jetz mal drei PDF Dateien mit verschidedenen Positionen der RechnungsNr bzw. Kunden-ID festgelegt und hochgeladen. Da die Positionen in den PDF Dateien unterschiedlich sein kann und die Bezeichnung auch variiert z.B. Rechnungsnummer o. RechnungsNr und Kunden-ID o. Kunden-Nr, währe es Super wenn man die Begriffe in Excel in einer Spalte eingeben könnte und diese nach den Begriffen in der PDF Sucht und dann mit Namen, kann auch ein Kürzel sein z.B. RNr_XXXXXXXXXX_KuNr_XXXXXXXXXX.pdf speichert.
https://www.herber.de/bbs/user/129874.zip
Gruß, marcus
Anzeige
Hier mal eine Variante mit...
20.05.2019 14:47:00
Case
Hallo, :-)
... Word. Das läuft aber IMHO erst ab Word 2013. Vorher kann man wohl keine PDF Dateien öffnen/konvertieren. ;-)
Habe etwas ähnliches für mich schon mal geschrieben. Das Prinzip bleibt aber dasselbe. Musst eventuell Anpassungen bei "Split" vornehmen. Der Code ist ausreichend kommentiert.;-)
Der Rest ist deine Sache. ;-)
Habe es eben in meinem Blog veröffentlicht - inklusive Beispieldatei. ;-)
PDF-Dateien auslesen - dann umbenennen...
Das dürfte bei 1000 Dateien aber etwas dauern. Probiere es erstmal an ein paar Testdateien ;-)
Eventuell ist es dann doch über den Adobe besser. Musst du probieren. ;-)
Servus
Case

Anzeige
SUPER,SUPER;SUPER
20.05.2019 19:28:55
marcus
Hallo liebes Forumteam,
möchte mich für eure Mühe sehr bedanken, habe es probiert und es Funktioniert.
Habe nur noch ein kleines Problem, wenn die Rechnungsnummer unterhalb vom Text steht, erkennt das Macro dieses nicht, gibt es dazu noch eine Lösung zu dem bestehenden Macro? Ansonsten bin ich hell auf begeistert
RechnungsNr
RE23598777
KundenNr
69852233
Vielen Dank
Gruß marcus

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige