ACC2000: Die Funktion MsgBox ignoriert das @-Zeichen

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 242889 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel wurde zuvor veröffentlicht unter D42343
Dieser Artikel wurde archiviert. Er wird im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.
Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
242889 ACC2000: MsgBox Function Ignores At Sign (@) Formatting
Alles erweitern | Alles schließen

Zusammenfassung

Mittel: Erfordert grundlegende Makro-, Codierungs- und Interoperabilitätsfertigkeiten.
Dieser Artikel bezieht sich sowohl auf eine Microsoft Access Datenbank (.mdb) als auch auf ein Microsoft Access Projekt (.adp).

Problembeschreibung

In Microsoft Access 2000 stellt das @-Zeichen keine bestimmte Formatierung zur Verfügung, wenn Sie es in der MsgBox-Funktion verwenden.

Ursache

Die MsgBox-Funktion die der Microsoft Visual Basic-Editor (Vbe6.dll) enthält, unterstützt nicht die Formatierung, die das @-Zeichen zur Verfügung stellt.

Lösung

Es gibt zwei mögliche Lösungen. Eine Lösung ist, die Aktion Meldung in einem Makro zu verwenden. Die andere ist, eine benutzerdefinierte Funktion zu schreiben, die die Eval-Funktion verwendet, um die MsgBox-Funktion aufzurufen.

Erstellen eines Makros, das die Aktion Meldung verwendet:
  1. Im Datenbankfenster klicken Sie unter Objekte auf Makros und dann auf Neu.
  2. Im Makro-Fenster klicken Sie auf den Pfeil unter Aktion und dann auf Meldung in der Liste der Aktionen.
  3. Betätigen Sie die F6-Taste, um die Einfügemarke in das Textfeld der Meldung zu bewegen.
  4. Geben Sie folgenden Text in das Meldungsfeld ein (ohne Anführungszeichen):
       "Falsche Schaltfläche!@Diese Schaltfläche funktioniert nicht.@Probieren Sie eine andere."
  5. Im Menü DATEI klicken Sie auf SPEICHERN UNTER und dann OK, um das Makro mit dem Standardnamen zu speichern.
  6. Im Menü AUSFÜHREN klicken Sie auf AUSFÜHREN.
Erstellen der Funktion FormatierteMeldung
Die Eval-Funktion zwingt den Visual Basic für Applikationen-Ausdrucksdienst die MsgBox-Funktion getrennt vom Visual Basic-Editor zu bewerten, weswegen es möglich ist, das @-Zeichen zum Formatieren zu nutzen. Das folgende Beispiel verwendet eine benutzerdefinierte Funktion namens FormatierteMeldung statt der MsgBox-Funktion. Zum Erstellen der Funktion FormatierteMeldung gehen Sie folgendermaßen vor:
  1. Starten Sie Microsoft Access.
  2. Öffnen Sie die Beispieldatenbank Nordwind.mdb.
  3. Erstellen Sie ein neues Modul.
  4. Fügen Sie die folgende Prozedur hinzu:
       Function FormatierteMeldung(Prompt As String, _
                                Optional Buttons As VbMsgBoxStyle = vbOKOnly, _
                                Optional Title As String = "Microsoft Access", _
                                Optional HelpFile As Variant, _
                                Optional Context As Variant) As VbMsgBoxResult
           Dim strMsg As String
           If IsMissing(HelpFile) Or IsMissing(Context) Then
              strMsg = "MsgBox(" & Chr(34) & Prompt & Chr(34) & ", " & Buttons & _
                        ", " & Chr(34) & Title & Chr(34) & ")"
           Else
              strMsg = "MsgBox(" & Chr(34) & Prompt & Chr(34) & ", " & Buttons & _
                        ", " & Chr(34) & Title & Chr(34) & ", " & Chr(34) & _
                        HelpFile & Chr(34) & ", " & Context & ")"
           End If
           FormattedMsgBox = Eval(strMsg)
       End Function
  5. Speichern Sie das Modul unter Verwendung des Standardnamens.
  6. Wenn Sie das bestimmte Format, das das @-Zeichen bietet, verwenden wollen, rufen Sie die Funktion FormatierteMeldung statt der eingebauten MsgBox-Funktion auf. Z.B.:
       Sub TestMsgBox()
           Dim lngResult As Long
           lngResult = FormatierteMeldung("Sehr wichtig!@Das ist eine ungültige Vorgehensweise.@Schauen Sie in die Hilfe.", _
               vbCritical + vbOKOnly, "Microsoft Access")
       End Sub

Weitere Informationen

In früheren Versionen von Microsoft Access konnten Sie das @-Zeichen verwenden, um den Meldungstext in der MsgBox-Funktion zu formatieren. Wenn Sie zwei @-Zeichen im Textfeld der Funktion MsgBox verwenden, wird der Text in drei Absätze aufgeteilt, wobei der erste fett dargestellt wird.

Diese Funktionalität stellt die Visual Basic für Applikationen-Bibliothek (Vba332.dll) in Microsoft Access 97 zur Verfügung. Mit der Integration des Microsoft Visual Basic-Editors in Microsoft Access 2000 ist die Vba332.dll nicht länger implementiert.

Schritte zum Nachvollziehen des Verhaltens:
  1. Starten Sie Microsoft Access.
  2. Öffnen Sie die Datenbank Nordwind.mdb.
  3. Erstellen Sie ein neues Modul.
  4. Geben Sie den folgenden Code ein:
       Option Compare Database
       Option Explicit
       Sub FormatMessage()
           Dim strMsgText As String
           strMsgText = " Sehr wichtig!@Das ist eine ungültige Vorgehensweise.@Schauen Sie in die Hilfe."
           MsgBox strMsgText
       End Sub
  5. Führen Sie die Prozedur im Direktfenster aus.
Die Meldung sieht folgendermaßen aus: "Sehr wichtig!@Das ist eine ungültige Vorgehensweise.@Schauen Sie in die Hilfe." In Microsoft Access 95 und 97 wurde diese Meldung in drei Absätze aufgeteilt, wobei der erste fett dargestellt wurde, ähnlich dem folgenden:
   Sehr wichtig!
Das ist eine ungültige Vorgehensweise.
   Schauen Sie in die Hilfe.
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.

Eigenschaften

Artikel-ID: 242889 - Geändert am: Freitag, 14. Februar 2014 - Version: 1.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Access 2000 Standard Edition
Keywords: 
kbnosurvey kbarchive kbdta KB242889
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com