Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Scannen mit VBA

Forumthread: Scannen mit VBA

Scannen mit VBA
29.11.2019 16:15:10
Juerg
Leibe VBA Kracks
Ich hänge wieder einmal fest. Ich habe im Internet eine VBA Funktion gefunden, mit welcher ich aus einem Makro meinen Scanner ansprechen und Dokumente scannen kann. Grundsätzlich funktioniert diese Funktion. Leider speichert sie die Datei als jpeg und nicht als pdf ab. Scannt man mit dem Einzelblatteinzug mehrere Seiten, wird nur die erste Seite gespeichert.
Kann mir Jemand helfen?
Herzlichen Dank zum Voraus Juerg
Option Explicit
#Const EARLYBINDING = True ' True/False
'Verweis "Microsoft Windows Image Acquisition Library v2.0" dann true
Public Function Scan(strFullPathName As String) As Boolean
Dim objCommonDialog As New WIA.CommonDialog    '(für Early-Binding)
Dim objImage As New WIA.ImageFile
Scan = False
On Error GoTo FlagErr
'Wenn kein Scanner gefunden wurde, wird hier ein Fehler erzeugt
Set objImage = objCommonDialog.ShowAcquireImage(ScannerDeviceType)
If Not objImage Is Nothing Then
objImage.SaveFile strFullPathName
Set objImage = Nothing
Scan = True
End If
Set objCommonDialog = Nothing
FlagExit:
Exit Function
FlagErr:
If Err.Number = -2145320939 Then
MsgBox "Es konnte kein WIA-fähiger Scanner an diesem System lokalisiert werden!",  _
vbExclamation, "Systemhinweis"
GoTo FlagExit
End If
MsgBox Error$ & Err, vbExclamation, "Anwendungsfehler"
Resume FlagExit
End Function
Sub Test()
Dim b As Boolean
Const strFullPathName As String = "D:\Documents\Finanzen\BU\2019\HPSCANS\Test.jpeg"
b = Scan(strFullPathName)
End Sub
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Scannen mit VBA
30.11.2019 09:53:43
mumpel
Hallo!
Die Einstellung musst Du in Deinem Scan-Programm vornehmen, also im Scan-Programm "PDF" als Standard setzen.
Gruß, René
Nachtrag
30.11.2019 09:56:28
mumpel
Im Übrigen ist die Scanfunktion in Excel nur dazu da ein Bild vom Scanner in eine Exceltabelle zu bekommen, und nicht um Excel als Scan-Programm zu missbrauchen.
Anzeige
;
Anzeige

Infobox / Tutorial

Scannen mit VBA – Anleitung zur Verwendung der Scan-Funktion in Excel


Schritt-für-Schritt-Anleitung

  1. VBA-Editor öffnen: Starte Excel und öffne den VBA-Editor mit ALT + F11.

  2. Modul einfügen: Klicke mit der rechten Maustaste auf "VBAProject (dein Arbeitsmappenname)" und wähle Einfügen > Modul.

  3. Code einfügen: Kopiere den folgenden VBA-Code in das Modul:

    Option Explicit
    #Const EARLYBINDING = True ' True/False
    'Verweis "Microsoft Windows Image Acquisition Library v2.0" dann true
    
    Public Function Scan(strFullPathName As String) As Boolean
        Dim objCommonDialog As New WIA.CommonDialog '(für Early-Binding)
        Dim objImage As New WIA.ImageFile
        Scan = False
        On Error GoTo FlagErr
        'Wenn kein Scanner gefunden wurde, wird hier ein Fehler erzeugt
        Set objImage = objCommonDialog.ShowAcquireImage(ScannerDeviceType)
        If Not objImage Is Nothing Then
            objImage.SaveFile strFullPathName
            Set objImage = Nothing
            Scan = True
        End If
        Set objCommonDialog = Nothing
    FlagExit:
        Exit Function
    FlagErr:
        If Err.Number = -2145320939 Then
            MsgBox "Es konnte kein WIA-fähiger Scanner an diesem System lokalisiert werden!", vbExclamation, "Systemhinweis"
            GoTo FlagExit
        End If
        MsgBox Error$ & Err, vbExclamation, "Anwendungsfehler"
        Resume FlagExit
    End Function
  4. Testfunktion erstellen: Füge die Test-Funktion hinzu:

    Sub Test()
        Dim b As Boolean
        Const strFullPathName As String = "D:\Documents\Finanzen\BU\2019\HPSCANS\Test.jpeg"
        b = Scan(strFullPathName)
    End Sub
  5. Makro ausführen: Speichere die Datei und führe das Makro Test aus, um den Scan zu starten.


Häufige Fehler und Lösungen

  • Fehler: Kein WIA-fähiger Scanner gefunden: Stelle sicher, dass dein Scanner korrekt angeschlossen und eingeschaltet ist. Prüfe außerdem die Treiberinstallation.

  • Problem mit dem Dateiformat: Wenn die Datei als JPEG und nicht als PDF gespeichert wird, liegt das an den Einstellungen des Scan-Programms. Ändere die Standard-Einstellung in deinem Scannprogramm auf PDF.


Alternative Methoden

Wenn die excel scan function nicht die gewünschten Ergebnisse liefert, kannst Du auch folgende Alternativen in Betracht ziehen:

  • Verwendung eines externen Scannprogramms: Scanne die Dokumente direkt über die Software deines Scanners und importiere sie dann in Excel.

  • PDF-Drucker: Nutze einen virtuellen PDF-Drucker, um Dokumente zu scannen und als PDF zu speichern, bevor Du sie in Excel importierst.


Praktische Beispiele

Hier sind einige Anwendungsbeispiele, wie die Scan-Funktion in Excel nützlich sein kann:

  • Rechnungen scannen: Scanne deine Rechnungen und speichere sie direkt in einem Ordner, um sie später in Excel zu analysieren.

  • Dokumentenarchivierung: Scanne wichtige Dokumente und speichere sie in einem strukturierten Ordnersystem, um die Übersichtlichkeit zu verbessern.


Tipps für Profis

  • Batch-Scanning: Wenn Dein Scanner mehrere Seiten scannen kann, nutze dies aus, um Zeit zu sparen. Achte darauf, dass das Scannprogramm richtig konfiguriert ist.

  • Automatisierung: Du kannst VBA nutzen, um den Scan-Prozess zu automatisieren, indem Du das Makro regelmäßig zu bestimmten Zeiten ausführst.


FAQ: Häufige Fragen

1. Kann ich mit der Scan-Funktion in Excel auch PDFs scannen?
Die excel scan funktion speichert standardmäßig als JPEG. Du musst die Einstellungen deines Scannprogramms anpassen, um PDFs zu erstellen.

2. Warum wird nur die erste Seite gescannt?
Wenn Du mehrere Seiten scannen möchtest, solltest Du sicherstellen, dass Dein Scanner über einen automatischen Dokumenteneinzug verfügt und dass die Einstellungen im Scannprogramm korrekt sind.

3. Welche Excel-Version wird benötigt?
Die oben genannten Funktionen und VBA-Codes sind in den meisten modernen Excel-Versionen ab Excel 2010 nutzbar, vorausgesetzt, die nötigen Bibliotheken sind referenziert.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige