Zellbereich in einem VBA-Makro über die Maus oder die Tastatur auswählen
In vielen Makro werden Zellbereiche verarbeitet. Suchen Sie eine komfortable Möglichkeit, aus einem Makro heraus den Anwender einen Bereich auswählen zu lassen? Dann können Sie das Kommando INPUTBOX verwenden.
Die folgende Abbildung zeigt, welches Eingabefenster Sie mit diesem Befehl in Ihre Makros einbinden können:
Nach der Anzeige des Fensters können Sie mit der Maus oder Tastatur einen Bereich in einer Tabelle auswählen. Im Eingabefeld setzt Excel automatisch den passenden Bezug ein. Das folgende Makro zeigt, wie Sie solche Fenster einbinden:
Sub MarkiereBereich()
On Error Resume Next
Dim Bereich As Range
Set Bereich = Application.InputBox("Bitte markieren Sie einen Bereich", _
"Bereich wählen", , , , , , 8)
MsgBox "Sie haben den folgenden Bereich ausgewählt: " & _
Bereich.AddressLocal(False, False)
On Error GoTo 0
End Sub
Nach dem Start des Makros blendet Excel zuerst das Fenster ein. Wenn Sie einen Zellbereich ausgewählt haben, zeigt Excel den zuvor gewählten Bereich in einem Mitteilungsfenster an:
In Ihren Makros setzen Sie anstelle des Mitteilungsfensters den Programmcode ein, mit dem Sie die Zellen im zuvor markierten Zellbereich verarbeiten möchten. Da der Befehl INPUTBOX ein Objekt vom Typ RANHGE zurückliefert, können Sie den gewählten Zellbereich sofort verarbeiten, beispielsweise in einer FOR-EACH-Schleife.
Um das Makro einzugeben, drücken Sie in Excel die Tastenkombination ALT F11, um den VBA-Editor aufzurufen. Fügen Sie hier über das Kommando EINFÜGEN - MODUL ein leeres Modulblatt ein. Um das Makro direkt aus Excel zu starten, setzen Sie die Tastenkombination ALT F8 ein.