Scannen mit VBA
29.11.2019 16:15:10
Juerg
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