Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Anhang direkt einscannen

Begonnen von Klaus S. aus B, Oktober 21, 2013, 14:44:26

⏪ vorheriges - nächstes ⏩

Klaus S. aus B

Hallo zusammen,

ich habe beim Suchen nichts passendes gefunden.

Gibt es eine Möglichkeit aus einem Formular direkt einen Scanner (TWAIN) aufrufen, ein Dokument scannen und direkt als Anlage in den DS schreiben?

Gruß
Klaus


m_baumann

Der Beitrag ist zwar schon etwas älter, aber vielleicht ist das ja für den einen oder anderen doch noch interessant.
Ich habe mir für das automatische Scannen folgenden VBA-Code zusammengebastelt:

Private Sub Befehl40_Click()
'Automatischer Scan
Dim wiaImg As New wia.ImageFile

Dim wiaDialog As New wia.CommonDialog

Dim wiaScanner As wia.Device

Dim IP As ImageProcess
Dim strEingabe As String
Dim IntAnzahl As Integer

On Error GoTo fehler

IntAnzahl = InputBox("Seitenanzahl eingeben!")

For IntAnzahl = 1 To IntAnzahl Step 1
strEingabe = InputBox("Dateinamen angeben!", , Me!Textsorte & "_" & IntAnzahl & ".JPG")


Set wiaScanner = wiaDialog.ShowSelectDevice
Set IP = CreateObject("WIA.ImageProcess")

With wiaScanner.Items(1)
   
   
    .Properties("6146").Value = 1 '4 is Black-white,gray is 2, color 1 (Color Intent)

    .Properties("6147").Value = 200 'dots per inch/horizontal

    .Properties("6148").Value = 200 'dots per inch/vertical

    .Properties("6149").Value = 0 'x point where to start scan

    .Properties("6150").Value = 0 'y-point where to start scan

    .Properties("6151").Value = 1660 'horizontal exent DPI x inches wide

    .Properties("6152").Value = 2334 'vertical extent DPI x inches tall
   
   
    Set wiaImg = .Transfer(wiaFormatJPEG) 'Change file type in save to match format
   



IP.Filters.Add (IP.FilterInfos("Convert").FilterID)
IP.Filters(1).Properties("FormatID").Value = wia.FormatID.wiaFormatJPEG
IP.Filters(1).Properties("Quality").Value = 40
Set wiaImg = IP.Apply(wiaImg)


wiaImg.SaveFile (Me.Dokumente & "\" & strEingabe)

End With

MsgBox "Scan erfolgreich!"

Next IntAnzahl


Set wiaImg = Nothing

Set wiaScanner = Nothing



Exit Sub

fehler:
MsgBox Err.Description


End Sub


Zunächst wird man aufgefordert, die Anzahl der zu scannenden Seiten anzugeben. Diese Zahl dient als Grundlage für die For-Next-Schleife, welche dementsprechend oft durchlaufen wird.
Die Zahl wird auch bei jedem Durchlauf an den Dateinamen angehängt und die einzelnen Bilddateien werden dann in einem Ordner gespeichert, der im Formular der Datenbank eingegeben wurde. Der Dateiname wiederum wird standardmäßig ebenfalls aus einem Textfeld des Dokuments übernommen.
Leider scheint das nur mit lokalen Scannern zu funktionieren, aber nicht mit Netzwerkgeräten. Auch scheint es nicht möglich zu sein, automatisch ein zusammenhängendes PDF zu erzeugen. Vielleicht weiß jemand hierfür Lösungsansätze?