Tipps & Tricks: Detail

Hier finden Sie zu dem ausgewählten Tipp oder Trick die detaillierten Angaben.

Wenn in den folgenden Erläuterungen Texte wie MsgBox formatiert sind, handelt es sich um konkret einzugebende Inhalte wie VBA-Code oder die Eingabe von Werten. Menüs wie Datei Speichern sind wie hier zu sehen formatiert. Schaltflächen oder Registerkarten auf Dialogen werden wie Menüs behandelt.

Alle Tipps sind nach bestem Wissen geprüft, aber selbstverständlich ohne Gewähr. Sollten Sie doch einen Fehler darin entdecken, würden wir uns freuen, wenn Sie uns per E-Mail Bescheid sagen.

Immer wieder ist es in der Excel-Programmierung nötig, von einem Bereich nur die Titelzeile zu finden, sei es zum Markieren oder zur weiteren Verarbeitung während des Makros. Das ist mit einem eher unbekannten Befehl sehr leicht zu bewerkstelligen:

Function ErsteZeile(rngStart As Range) As Range
Set ErsteZeile = rngStart.Offset(0, 0).Resize(1, rngStart.Columns.Count)
End Function

Diese Funktion ErsteZeile erhält als einziges Argument einen Bereich (Range) und gibt als Ergebnis den ermittelten Bereich nur der Titelzeile zurück. Dazu wird die linke obere Ecke des ursprünglichen Bereichs mit Offset(0, 0) ausdrücklich nicht verschoben, aber seine Gesamtgröße mit Resize auf eine Zeile reduziert.

Zum Testen der Funktion benötigen Sie eine Prozedur wie im folgenden Beispiel, bei der ausgehend von der aktuellen Markierung anschließend deren Titelzeile markiert ist:

Sub TesteErsteZeile()
ErsteZeile(Selection).Select
End Sub

Starten Sie die Prozedur TesteErsteZeile einfach, indem Sie den Cursor hineinsetzen und F5 drücken.