Microsoft Office Tutorials and References
In Depth Information
13 For x = 2 To Spalten 'Zeilenkriterium
14 rng.Cells(1, x).Value = _
ZeileVon + (ZeileBis - ZeileVon) * (x-2) / (spalten - 2)
15 Next
16 Range("MOP_Bereich").Table _
RowInput:=Range("B5"), _
columnInput:=Range("B2")
End Sub
Das Einzige, dass das Makro voraussetzt, ist die Definition des Namensbereiches
MOP_Bereich . Dieser kann aber komplett leer sein, da die Voreinstellungen von Zei-
len und Spaltenkopf im Makro erledigt werden.
In Zeile 1 wird MOP_Bereich zunächst an eine Objektvariable übergeben. In den Zeilen
2 und 3 werden dann die Höhe und die Breite des Bereiches abgefragt. In den Zeilen 4
bis 8 werden die Intervalle von Spalten- und Zeilenkriterium sowie die Adresse der
Zielgröße (hier B6) definiert. Diese Werte könnte man auch mit Input-Boxen abfragen
oder an Zellen knüpfen, in denen sie stehen. Ab Zeile 9 wird dann die Tabelle gefüllt.
Die erste For-Next -Schleife füllt die erste linke Spalte, die das Intervall der Rück-
flüsse enthält. Die zweite For-Next -Schleife füllt die erste Zeile mit den Zinssätzen.
In Zeile 16 wird dann die eigentliche Table -Methode ausgeführt, die in den Bereich
E4:J16 die Formel
{=MEHRFACHOPERATION(B5;B2)}
schreibt. Denkt man noch einen Schritt weiter, könnte man auf die Table -Methode
auch ganz verzichten und durch weitere For-Next -Schleifen ersetzen. Diese Schleifen
müssten für alle Zellen im Datenbereich die aktuelle Rückfluss-Zinssatz-Kombinatio-
nen in B2 und B5 eintragen und das dann resultierende Ergebnis in die entsprechende
Zelle schreiben. Gesagt – getan. Also, Zeile 16 löschen und folgenden Code dafür ein-
setzen:
Application.Calculation = xlCalculationAutomatic
For x = 2 To spalten
For y = 2 To zeilen
Range("B2").Value = rng.Cells(y, 1)
Range("B5").Value = rng.Cells(1, x)
rng.Cells(y, x).Value = Range("B6").Value
Next
Next
Search JabSto ::




Custom Search