Pozdrav vsem. imam problem, ki ga ne znam elegantno rešiti, na "peš" način gre, ampak to ni to. Torej, za potrebe neke rekreativne teniške lige moram izpisati vse možne kombinacije parov igralcev, ki se lahko srečajo v ligi. Igra pa se enokrožni sistem. Imam imena 24 igralcev v celicah od A1 do A24. Skupno število vseh možnih srečanj, če vsak igra z vsakim je 276
=combin(24;2), to znam. Zdaj bi pa rad v celicah od B1 do C276 zapisal vse te možne pare. V B1 igralec1 , v C1 igralec2, v B2 igralec1, v C2 igralec3, ... Hvala za morebitne odgovore.lpm
Prirejanje parov
Po kratkem oddihu
...
Spodaj imate funkcijo, ki sprejme območje kjer so navedena moštva (posamezniki) udeleženi v tekmovanju, ter celico od koder dalje se bodo izpisale vse možne kombinacije tekem.
Priložena je tudi funkcija 'izvedi', ki reši vaš konkreten primer:
Spodaj imate funkcijo, ki sprejme območje kjer so navedena moštva (posamezniki) udeleženi v tekmovanju, ter celico od koder dalje se bodo izpisale vse možne kombinacije tekem.
Priložena je tudi funkcija 'izvedi', ki reši vaš konkreten primer:
Koda: Izberi vse
Option Explicit
'
' www.matjazev.net
'
' april 2009
'
Sub kombiniraj(vhod As Range, izhod As Range)
Dim vrstica As Long
Dim i As Long, j As Long
vrstica = 0
For i = vhod.Row To vhod.Rows.Count - 1
For j = i + 1 To vhod.Rows.Count
izhod.Cells(1, 1).Offset(vrstica, 0).Value = vhod.Cells(1, 1).Offset(i - 1, 0)
izhod.Cells(1, 1).Offset(vrstica, 1).Value = vhod.Cells(1, 1).Offset(j - 1, 0)
vrstica = vrstica + 1
Next
Next
End Sub
Sub izvedi()
kombiniraj Range("a1:a24"), Range("b1")
End Sub
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator