VBA: Echte und unechte Schaltflächen

Die Standard-Schaltflächen

Schon die Schaltflächen für OK und Abbrechen sollten sorgfältig eingestellt werden. Geübte Benutzer erwarten schließlich, dass ein Dialog mit der Return-Taste bestätigt und mit der Escape-Taste abgebrochen werden kann.

Die Schaltfläche 'OK'

Stellen Sie also für die OK-Schaltfläche die Default-Eigenschaft auf True. Dann wird diese mit einem etwas dickeren Rand angezeigt. Je nach Einstellung Ihres Maustreibers wird der Mauszeiger beim Erscheinen des Dialogs auch direkt darauf positioniert.

Default-Schaltfläche und nicht Default-Schaltfläche

Das Auslösen dieser Schaltfläche per Return-Taste funktioniert allerdings nur, wenn auf dem Dialog nicht gerade Textfelder aktiv sind, welche Return als Zeilenumbruch akzeptieren. Da wird Windows mal wieder von seiner ewigen Unentschlossenheit eingeholt: Die (Return-)Taste kann sowohl für eine Bestätigung als auch für das Einfügen eines Zeilenumbruchs verwendet werden.

Die Schaltfläche 'Abbrechen'

Wenn Sie die Cancel-Eigenschaft für die Abbrechen-Schaltfläche auf True stellen, reagiert diese automatisch auf die Escape-Taste. Das gilt auch dann, wenn der Fokus gar nicht auf der Schaltfläche selbst liegt.

Beide Schaltflächen sollten typischerweise den Dialog schließen; daher sehen die Prozeduren wie im folgenden Code aus:

Private Sub btnAbbrechen_Click()
	Unload Me
End Sub

Private Sub btnOK_Click()
	'beliebiger Code hier...
	Unload Me
End Sub

Nur für die OK-Schaltfläche wird vor dem Entladen des Dialogs noch der jeweils notwendige Code ausgeführt.

Die Schaltfläche 'Übernehmen'

Relativ häufig finden sich in Dialogen inzwischen Übernehmen-Schaltflächen, die im Grunde nur OK-Schaltflächen ohne Schließen sind. Die Programmierung ändert sich dann lediglich geringfügig wie im folgenden Code:

Private Sub btnAbbrechen_Click()
	Unload Me
End Sub

Private Sub btnOK_Click()
	AbschlussAktion
	Unload Me
End Sub

Private Sub btnUebernehmen_Click()
	AbschlussAktion
End Sub

Private Sub AbschlussAktion
	'beliebiger Code hier...
End Sub

Dabei werden die von der OK- und der Übernehmen-Schaltfläche ausgeführten Aktionen einfach in eine eigene Prozedur (hier mit dem beliebigen Namen AbschlussAktion) ausgelagert und von beiden dann aufgerufen. Damit ist sichergestellt, dass in beiden Fällen dasselbe ausgeführt wird.

Mitglied werden, Vorteile nutzen!

  • Sie können alles lesen und herunterladen: Beiträge, PDF-Dateien und Zusatzdateien (Checklisten, Vorlagen, Musterbriefe, Excel-Rechner u.v.a.m.)
  • Unsere Autoren beantworten Ihre Fragen

Inhalt

Downloads zu diesem Beitrag

Newsletter abonnieren