09.02.2014 Aufrufe

Ein VBA-Programm in Excel

Ein VBA-Programm in Excel

Ein VBA-Programm in Excel

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!