Hallo,
ich möchte einen variablen Wert von etwa 6 bis 15 in minimal 3 und maximal 4 aufteilen.
zum Beispiel:
7 ergibt 4;3
9 ergibt 3;3;3
10 ergibt 4;3;3
14 ergibt 4:4:3:3
Folgendes habe ich dafür bisher ausgetüftelt, was auch ganz gut funktioniert.
Damit wird aber leider nicht immer der höhere Wert nach hinten gesetzt, wie ich es in der Ausgabe gern hätte.
Gibt es dafür eine einfache Möglichkeit?
ich möchte einen variablen Wert von etwa 6 bis 15 in minimal 3 und maximal 4 aufteilen.
zum Beispiel:
7 ergibt 4;3
9 ergibt 3;3;3
10 ergibt 4;3;3
14 ergibt 4:4:3:3
Folgendes habe ich dafür bisher ausgetüftelt, was auch ganz gut funktioniert.
VB.NET-Quellcode
- Dim LaufNr As Integer = 1
- Dim NextLauf As Integer = 4
- If (DataGridView1.Rows.Count - 1) Mod 4 = 0 OrElse (DataGridView1.Rows.Count - 2) Mod 4 = 0 Then
- NextLauf = 3
- End If
- For I As Integer = 0 To DataGridView1.Rows.Count - 1
- DataGridView1.Rows(I).Cells(1).Value = LaufNr ' Laufnummer setzen
- If (I + 1) Mod NextLauf = 0 AndAlso I + 1 < DataGridView1.Rows.Count - 1 Then
- LaufNr += 1
- End If
- Next
Damit wird aber leider nicht immer der höhere Wert nach hinten gesetzt, wie ich es in der Ausgabe gern hätte.
Gibt es dafür eine einfache Möglichkeit?