Scannen mehrerer Seiten mit dem ADF-scanner mit VBA

Schreibe ich eine Microsoft Access-Anwendung, und ich möchte dem Benutzer ermöglichen, scan mehrere Seiten zu einem einzigen PDF-format. Die PDF-Konvertierung funktioniert, wenn ich alle Seiten gescannt. Hier ist mein code:

Option Compare Database
Option Explicit

Const WIA_FORMAT_JPEG = "{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}"

Public Function MyScan()
  Dim ComDialog As WIA.CommonDialog
  Dim DevMgr As WIA.DeviceManager
  Dim DevInfo As WIA.DeviceInfo
  Dim dev As WIA.Device
  Dim img As WIA.ImageFile
  Dim i As Integer
  Dim wiaScanner As WIA.Device

  Set ComDialog = New WIA.CommonDialog
  Set wiaScanner = ComDialog.ShowSelectDevice(WiaDeviceType.UnspecifiedDeviceType, False, True)

  Set DevMgr = New WIA.DeviceManager

  For i = 1 To DevMgr.DeviceInfos().Count
    If DevMgr.DeviceInfos(i).DeviceID = wiaScanner.DeviceID Then
      Set DevInfo = DevMgr.DeviceInfos(i)
    End If
  Next i

  Set dev = DevInfo.Connect

  Set img = dev.Items(1).Transfer(WIA_FORMAT_JPEG)

  img.SaveFile "C:\img.jpg"

  Set img = Nothing
  Set dev = Nothing
  Set DevInfo = Nothing
  Set DevMgr = Nothing
  Set ComDialog = Nothing


End Function

Natürlich ist es wichtig zu sagen, dass mein scanner ist Avision AV121 mit einem automatischen Dokumenteneinzug ausgestattet.

Mein problem ist, dass Set img = dev.Items(1).Transfer(WIA_FORMAT_JPEG) durchsucht ALLE Seiten auf einmal (und nicht nur von einer einzigen Seite), aber ich sehe nur die erste in der Bild-Datei. Weil alle Seiten eingescannt sind auf einmal, ich kann es nicht in einer Schleife - ein Fehler ausgelöst, in der zweiten iteration (sagen, dass die Zuführung leer ist, wie es wirklich ist) und ich habe nur noch die erste Seite gescannt.

Ich würde sagen, dass dies scheint ein häufiges problem zu sein. Ich habe gelesen, eine Menge threads zu diesem problem, aber habe nichts gefunden das meine Frage beantwortet.

Ich hoffe hier Hilfe zu finden, ich bin wirklich frustriert.

Vielen Dank

InformationsquelleAutor Yotam | 2013-06-09

Schreibe einen Kommentar