W Accessie 97 jest przyjemna możliwość formatowania stringów w oknie MsgBox.
Przykładowo jeśli napiszemy
MsgBox "Bardzo ważny komunikat!@Ta operacja nie jest dozwolona.@Zajrzyj do instrukcji."
- otrzymamu ładnie sformatowany, poniższy tekst:
Niestety Access 2000 ignoruje formatujące znaczenie znaków @ występujących w funkcji MsgBox
i ten sam tekst wyświetli tak:
Bardzo ważny komunikat!@Ta operacja nie jest dozwolona.@Zajrzyj do instrukcji.
Czy jest jakiś sposób, żeby sobie z tym poradzić?
MsgBox ("Tekst 1@Tekst 2@Tekst 3",36,"Tytuł")
Eval ("MsgBox ('Tekst 1@Tekst 2@Tekst 3',36,'Tytuł')")
Bardziej kompleksowy przykład znalazłem w MSDM Library. Proponują tam napisanie własnej funkcji, której bedziemy używać w Accessie 2000, zamiast standardowego MsgBox. Oto ta funkcja:
Function FMsgBox(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('" & Prompt & "', " & Buttons & ", '" & Title & "')" Else strMsg = "MsgBox('" & Prompt & "', " & Buttons & ", '" & Title & _ "', '" & HelpFile & "', " & Context & ")" End If FMsgBox = Eval(strMsg) End Function'Wywołanie funkcjiFMsgBox ("Tekst 1@Tekst 2@Tekst 3",36,"Tytuł")