Rechtschreibprⁿfung in Formular integrieren

Ich m÷chte in einem Access-Formular beim Verlassen eines Textfeldes ausschlie▀lich fⁿr dieses eine Rechtschreibprⁿfung starten. Mit Hilfe eines Makros lΣsst sich die Rechtschreibprⁿfung zwar aufrufen, prⁿft dann aber gleich alle Textfelder des Formulars und blΣttert zum nΣchsten Datensatz. Kennen Sie eine L÷sung fⁿr mein Problem?

Den gewⁿnschten Effekt erreichen Sie zum Beispiel mit VBA-Anweisungen, die Sie als Ereignisprozedur der Eigenschaft ╗Beim Verlassen½ des entsprechenden Feldes eintragen. Wir empfehlen Ihnen aber gleich die wiederverwendbare Funktion ╗Rechtschreibpruefung()½, die Sie beliebig und auch in mehreren Feldern auf unterschiedlichen Formularen einsetzen k÷nnen. Eine Beispiel-Datenbank fⁿr Access 97 finden Sie auf der Heft-CD CHIP-Code RSPRUEF.
╓ffnen Sie ein beliebiges Modul Ihrer Datenbank in der Entwurfsansicht. Mit dem Befehl ╗Einfⁿgen | Prozedur½ legen Sie die neue Funktion ╗Rechtschreibpruefung½ an. Definieren Sie die Funktion als ╗÷ffentlich½ und fⁿgen Sie die folgenden VBA-Anweisungen ein:

Public Function

Rechtschreibpruefung ()

' Die Funktion fⁿhrt im aktuellen Feld

' eines beliebigen Formulars

die

' Rechtschreibprⁿfung aus

On Error GoTo

Err_Rechtschreibpruefung

Dim AktSteuer As Control

Set AktSteuer = Screen.ActiveControl

AktSteuer.SetFocus

AktSteuer.SelStart = 0

AktSteuer.SelLength = Len (AktSteuer)

RunCommand acCmdSpelling

Exit_Rechtschreibpruefung:

Exit Function

Err_Rechtschreibpruefung:

MsgBox Err.Description

Resume

Exit_Rechtschreibpruefung

End Function
Das Objekt ╗AktSteuer½ vom Typ ╗Control½ stellt ein beliebiges Steuerelement des Formulars dar. Mit Hilfe der Anweisung ╗Screen.ActiveControl½ weisen Sie diesem Objekt das momentan aktivierte Steuerelement zu. So k÷nnen Sie direkt darauf zugreifen.

Die Kombination der beiden Anweisungen ╗SelStart½ und ╗SelLength½ bewirkt, dass Access den gesamten Inhalt des Feldes markiert, bevor der Befehl ╗RunCommand acCmdSpelling½ die Rechtschreibprⁿfung startet.

Sie verknⁿpfen die Funktion mit Textfeldern, indem Sie die Formulare in der Entwurfsansicht ÷ffnen, mit der rechten Maustaste auf die jeweiligen Felder klicken, den Kontextbefehl ╗Eigenschaften½ aufrufen und auf der Registerkarte ╗Ereignis½ im Feld ╗Beim Verlassen½ den Funktionsaufruf ╗=Rechtschreibpruefung()½ eintragen.