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.
Seite 72<br />
Tabellennavigation<br />
✘ Wird diese Methode auf einen Zellbereich angewandt, können die Indizes der obersten<br />
Zeile und der äußerst linken Spalte des Zellbereichs er<strong>mit</strong>telt werden:<br />
Range("B3:C5").Row ergibt 3<br />
Range("B3:C5").Column ergibt 2<br />
Mit so er<strong>mit</strong>telten Positionen kann relativ positioniert werden:<br />
Cells (ActiveCell.Row + 7, ActiveCell.Column - 1).Value = "Gesamt: "<br />
Auch die im Kap. 7.2 vorgestellte OFFSET <strong>–</strong> Methode kann bei der relativen Positionierung<br />
geeignet. In der Sub:<br />
<br />
Sub Testen()<br />
Dim i As Integer<br />
For i = 1 To 3<br />
ActiveCell.Offset(i + 2, ActiveCell.Column).Interior.Pattern = 2<br />
Next<br />
End Sub<br />
werden beispielsweise bei aktiver Zelle C3 die Zellen F6:F8 <strong>mit</strong> einem Muster belegt.<br />
(Näheres zu OFFSET <strong>–</strong> siehe Kap. 7.2).<br />
9.3 Zugriff auf Tabellenblätter und Arbeitsmappen<br />
Sobald Operationen auf Zellen oder Zellbereichen nicht im aktiven Tabellenblatt oder eienr<br />
aktiven Arbeitsmappe ablaufen sollen oder das aktive Tabellenblatt oder Arbeitsmappe nicht<br />
genau bekannt sind, wird es nötig sein, eines der Elemente selbst zu bestimmen.<br />
• Zugriff auf Tabellenblätter<br />
Für die Auswahl eines Tabellenblattes gibt es im <strong>VBA</strong> zwei Alternativen:<br />
1. Auswahl über den Index des Worksheets <strong>–</strong> Objekts Tabellenblatt<br />
2. Auswahl über den Namen des Worksheets <strong>–</strong> Objekts<br />
Alternative 1<br />
Der Index eines Tabellenblattes ist die relative Position des Tabellenblattes in der<br />
Worksheets <strong>–</strong> Auflistung.<br />
Worksheets(3).Cells(3,5).Value = 5<br />
setzt den Wert 5 in die Zelle E3 des dritten Tabellenblattes der aktiven Arbeitsmappe ein.<br />
✘ Beim Zugriff über den Indexwert ist Vorsicht geboten: wird im Programm ein<br />
Tabellenblatt gelöscht, eingefügt oder verschoben, verändern sich die Indexwerte der<br />
Tabellenblätter in der Worksheets <strong>–</strong> Auflistung.<br />
✘ Die Indexwerte der Tabellenblätter können in Schleifenkonstrukten benutzt werden,<br />
wenn mehrere Tabellenblätter einer Arbeitsmappe gleichen Operationen unterzogen<br />
werden sollen:<br />
<br />
Sub Testen()<br />
For n = 1 To Worksheets.Count<br />
Worksheets(n).Cells(2, 2).Formula = "=A1*0.5"<br />
Next<br />
End Sub