Ein VBA-Programm in Excel
Ein VBA-Programm in Excel
Ein VBA-Programm in Excel
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
If AnzSp > Max_AnzSp Then<br />
Max_AnzSp = AnzSp<br />
Worksheets(1).Range("H3").Value = Max_AnzSp<br />
End If<br />
MaxAnzTi = AnzSp \ 4<br />
If AnzSp Mod 5 = 0 Then<br />
M<strong>in</strong>AnzTi = AnzSp \ 5<br />
Else<br />
M<strong>in</strong>AnzTi = AnzSp \ 5 + 1<br />
End If<br />
Sp<strong>in</strong>Button3.M<strong>in</strong> = M<strong>in</strong>AnzTi<br />
Sp<strong>in</strong>Button3.Max = MaxAnzTi<br />
TextBox3.Text = Sp<strong>in</strong>Button3.Value<br />
ReDim Preserve Anz5erTi(M<strong>in</strong>AnzTi To MaxAnzTi)<br />
ReDim Preserve Anz4erTi(M<strong>in</strong>AnzTi To MaxAnzTi)<br />
For i = M<strong>in</strong>AnzTi To MaxAnzTi<br />
Anz4erTi(i) = 5 * i - AnzSp<br />
Anz5erTi(i) = i - Anz4erTi(i)<br />
Next i<br />
TextBox4.Value = Anz5erTi(Sp<strong>in</strong>Button3.Value)<br />
TextBox5.Value = Anz4erTi(Sp<strong>in</strong>Button3.Value)<br />
End Sub<br />
Durch die Variablen Max_AnzSp und AnzSp soll man sich nicht irritieren<br />
lassen. Sie dienen im <strong>Programm</strong> nur zur Differenzierung nach Anzahl<br />
der Spieler pro Durchgang, falls mal jemand nach e<strong>in</strong>em Durchgang<br />
aussteigt oder neu dazu kommt (s. 2.5.4 Zusatzfunktionen). Es soll<br />
hier eigentlich nur deutlich werden, wie die Eigenschaften dieses Elementes<br />
durch die Makro-<strong>Programm</strong>ierung gesteuert werden können.<br />
Zunächst e<strong>in</strong>mal werden die maximale und m<strong>in</strong>imale Anzahl an benötigten<br />
Tischen berechnet (MaxAnzTi und M<strong>in</strong>AnzTi) und ihre Werte<br />
den Variablen Sp<strong>in</strong>Button3.M<strong>in</strong> und Sp<strong>in</strong>Button3.Max zugewiesen.<br />
Damit hat das Drehfeld Sp<strong>in</strong>Button3 die Eigenschaften maximal möglicher<br />
Wert und m<strong>in</strong>imal möglicher Wert zugewiesen bekommen. Da<br />
über die Anweisung TextBox3.Text = Sp<strong>in</strong>Button3.Value die TextBox3<br />
mit dem Drehfeld Sp<strong>in</strong>Button3 verbunden ist, kann somit die Text-<br />
Box3 jetzt nur noch Werte <strong>in</strong>nerhalb dieses Intervalls annehmen. Aus<br />
diesen Ausführungen wird auch deutlich, dass <strong>in</strong> diesem Fall e<strong>in</strong>e<br />
Quellcode-<strong>Programm</strong>ierung unumgänglich ist, da Maximal- und M<strong>in</strong>imal-Wert<br />
jeweils variabel s<strong>in</strong>d. <strong>E<strong>in</strong></strong> <strong>E<strong>in</strong></strong>trag im Eigenschaften-Fenster<br />
macht somit ke<strong>in</strong>en S<strong>in</strong>n, auch wenn diese Optionen im Eigenschaftenfenster<br />
von Sp<strong>in</strong>Button3 mit Max bzw. M<strong>in</strong> vorgesehen s<strong>in</strong>d und somit<br />
auch möglich wären.<br />
Aus dem Quelltext geht ferner hervor, dass für jeden möglichen Wert<br />
zwischen der m<strong>in</strong>imalen und maximalen Anzahl an Tischen e<strong>in</strong>e Aufteilung<br />
<strong>in</strong> Anzahl 4er-Tische (= TextBox4) und Anzahl 5er-Tische (=<br />
28