VBA – Programmierung mit Excel Grundlagen
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Ablaufsteuerung I<br />
7 Ablaufsteuerung I<br />
In diesem Kapitel soll eine kleine Auswahl von einfachen Anweisungen und Operationen<br />
vorgestellt werden, die für die Ablaufsteuerung eines <strong>VBA</strong> <strong>–</strong> Programms in einer <strong>Excel</strong> <strong>–</strong><br />
Arbeitsmappe benutzt werden können.<br />
Mit den hier vorgestellten Verfahren sind schon sehr einfache Programmlösungen möglich.<br />
Weitere Informationen zur Ablaufsteuerung und Navigation in Tabellen und Arbeitsmappen<br />
werden in den „Navigationskapiteln“ dieser Unterlage (s. Seiten 68, 73 und Fehler!<br />
Textmarke nicht definiert.) vorgestellt.<br />
7.1 Cursorposition feststellen<br />
Für die Steuerung des Programms ist es oft wichtig, festzustellen wo sich aktuell der Cursor<br />
befindet oder anders ausgedrückt, welche Zelle ist aktuell aktiv. Aus den unterschiedlichen<br />
Möglichkeiten ergeben sich unterschiedliche Anweisungen (die er<strong>mit</strong>telten Positionen<br />
werden in den Beispielen jeweils Variablen zugewiesen):<br />
• Adresse der aktiven Zelle.<br />
Die Adresse der aktiven Zelle des aktiven Tabellenblattes wird über die Eigenschaft<br />
ACTIVECELL er<strong>mit</strong>telt:<br />
Position = ActiveCell.Address<br />
er<strong>mit</strong>telt.<br />
• Zeilennummer der aktiven Zelle<br />
Soll nur die Zeilennummer der aktiven Zelle er<strong>mit</strong>telt werden, geschieht es über:<br />
Position = ActiveCell.Row<br />
• Spaltennummer der aktiven Zelle<br />
Fast analog läßt sich die Spaltennummer der aktiven Zelle er<strong>mit</strong>teln:<br />
Position = ActiveCell.Column<br />
• Name der Tabelle <strong>mit</strong> der aktiven Zelle<br />
Der Tabellenname wird über die Eigenschaft PARENT der Eigenschaft ACTIVECELL<br />
er<strong>mit</strong>telt:<br />
Position = ActiveCell.Parent.Name<br />
• Name der Arbeitsmappe<br />
Der Name der Arbeitsmappe wird über die Eigenschaft PARENT der Eigenschaft<br />
ACTIVESHEET des Windows- oder Application <strong>–</strong> Objekts er<strong>mit</strong>tel:<br />
Position = ActiveSheet.Parent.Name<br />
7.2 Versetzen des Cursors (Offset <strong>–</strong> Methode)<br />
Für die Versetzung des Cursors von einer aktiven Zelle (Versetzen der Markierung) in einen<br />
anderen Bereich wird die OFFSET <strong>–</strong> Methode benutzt:<br />
Objekt.Offset[(rowOffset, columnOffset)]<br />
OBJEKT ist der Bereich, auf den die Methode angewandt werden soll<br />
ROWOFFSET ist die ganzzahlige (positiv, negativ oder 0) Angabe der Zeilenzahl, um die von<br />
der aktuellen Position ausgehend verschoben werden soll (ohne Angabe = 0).<br />
COLUMNOFFSET ist die ganzzahlige (positiv, negativ oder 0) Angabe der Spaltenzahl, um die,<br />
ausgehend von der aktuellen Position, verschoben werden soll (ohne Angabe = 0).<br />
Seite 57