Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Achtung: Dies ist nicht der vollständige Artikel, sondern nur ein paar Seiten davon. Wenn Sie hier nicht erfahren, was Sie wissen möchten, finden Sie am Ende Informationen darüber, wie Sie den ganzen Artikel lesen können.

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

Gedrucktes Heft

Diesen Beitrag finden Sie in Ausgabe 6/2006.

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

Zusammenfassung

Verarbeiten Sie gescannte Dokumente und ermitteln Sie per OCR den enthaltenen Text.

Techniken

VBA, OCR

Voraussetzungen

Office 2003 und höher

Beispieldatei

OCRMitVBA.mdb

Shortlink

420

Texterkennung mit OCR und VBA

André Minhorst, Duisburg

Wer sich die Mühe macht, Dokumente wie etwa seine Geschäftskorrespondenz zu scannen, möchte möglicherweise auch auf die darin enthaltenen Texte zugreifen. Mit Access, VBA und der passenden Bibliothek ist das ein Kinderspiel: Access im Unternehmen zeigt, wie Benutzer von Access 2003 ihre Anwendung kostenlos um ein VBA-gesteuertes OCR-Tool zur Texterkennung erweitern.

Seit Office XP liefert Microsoft mit seinen Paketen ein Steuerelement namens Microsoft Office Document Imaging Viewer aus, das zusammen mit der Microsoft Office Document Imaging x.0 Type Library ein interessantes Gespann zur Anzeige und Verarbeitung von gescannten Dokumenten liefert. Damit kann man ins digitale Format überführte Dokumente erst richtig wertvoll machen: Die Methoden der genannten Bibliothek ermöglichen nämlich das Erkennen der in den Dokumenten enthaltenen Texte.

Interessant ist das für viele Anwendungen: In einer Vertragsverwaltung etwa kann man es sich sparen, Vertragsinhalte zusammengefasst in Text- oder Memofeldern einer Tabelle zu speichern, um später danach zu suchen – stattdessen liest man einfach den kompletten Vertragstext in ein Memofeld ein. Oder man erzeugt direkt eine Tabelle mit den enthaltenen Wörtern und verknüpft diese mit dem jeweiligen Vertragsdatensatz – so lässt sich gar eine Volltextsuche realisieren.

Hilfe herunterladen

Die Hilfe zur Bibliothek Microsoft Office Document Imaging 11.0 Type Library wird nicht standardmäßig mitinstalliert. Sie können diese aber unter [1] herunterladen und dann im Verzeichnis C:\Program Files\Microsoft Office 2003 Developer Resources\MODI speichern.

Die Hilfe ist leider nicht im VBA-Editor integriert; Sie müssen Informationen zu den Objekten, Methoden, Eigenschaften und Ereignissen also von Hand statt per F1 heraussuchen.

Dokumente anzeigen

Vor der Texterkennung sieht man immer gerne, ob man aktuell überhaupt das richtige Dokument beackert. Daher fügen Sie einem neuen Formular namens frmOCR zunächst den Microsoft Office Document Imaging Viewer hinzu (s. Abb. 1) und ändern seinen Namen auf ctlMODI. Legen Sie dann eine Schaltfläche namens cmdDokumentOeffnen hinzu, die folgende Ereignisprozedur auslöst. Die hier verwendete Funktion OpenFileName zum Anzeigen des Datei-Dialogs finden Sie im Modul mdlTools der Beispieldatenbank (s. Listing 1).

Listing 1: Dokument öffnen

Private Sub cmdDokumentOeffnen_Click()

     Me.ctlMODI.FileName = OpenFileName(CurrentProject.Path, _
„Dokument öffnen:“, „Tagged Image File (*.tif)“)

End Sub

pic001.tif

Abb. 1: Hinzufügen des Steuerelements zum Anzeigen von Dokumenten

Damit haben Sie auch schon die erste Methode des MODI-Steuerelements kennen gelernt – nämlich die zum Anzeigen eines im Dateisystem gespeicherten Dokuments.

Obige Routine greift direkt über Me!ctlMODI auf das Steuerelement zu, was nicht von IntelliSense unterstützt wird, aber letztendlich zuverlässiger ist. Möchten Sie IntelliSense bei der Programmierung einsetzen, legen Sie eine passende Objektvariable für den Verweis auf das Steuerelement an und weisen Sie der Variablen in der Ereignisprozedur Beim Öffnen des Formulars das Steuerelement über dessen Object-Eigenschaft zu. In der Folge verwenden Sie dann die Objektvariable objMODI für den Zugriff auf das Steuerelement (s. Abb. 2).

pic002.tif

Abb. 2: Original und Fälschung

Das Laden eines Dokuments funktioniert nun, doch leider nur einmal: Das Öffnen eines weiteren Dokuments ist nicht möglich; erst nach Beenden und Neustarten der Anwendung geht dies wieder. Allerdings hilft ein kleiner Umweg, der gleichzeitig weitere Elemente der Bibliothek offenbart. Die folgende Routine erzeugt zunächst ein Document-Objekt und füllt es über die Create-Methode mit der gewählten Datei. Schließlich weist sie die so geladene Datei dem Steuerelement ctlMODI zu.

Sie haben das Ende des frei verfügbaren Teils des Artikels erreicht. Lesen Sie weiter, um zu erfahren, wie Sie den vollständigen Artikel lesen und auf viele hundert weitere Artikel zugreifen können.

Sind Sie Abonnent?Jetzt einloggen ...
 

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

© 2003-2015 André Minhorst Alle Rechte vorbehalten.