ADAPTATION MACRO h2s04 TIRAGE ALEATOIRE

le forum bonjour,

c'est la macro sur base de 20 personnes sur 20 jours (merci h2s04)

je voudrais l'adapter sur base de 16 personnes et 16 jours ....quel paramètre modifier ? ca me permettrait d'essayer de l'adapter par la suite

merci

tomatito37

Sub tirage()

For i = 1 To 20

Cells(4, i + 5) = Cells(i + 3, 1)

Next i

For i = 2 To 20

For j = 1 To 20

If j = 20 Then

Cells(i + 3, j + 5) = Cells(i + 2, 6)

Else

Cells(i + 3, j + 5) = Cells(i + 2, j + 6)

End If

Next j

Next i

'melange colonne

For i = 1 To 20

d = Application.RandBetween(6, 25)

Range(Cells(4, d), Cells(23, d)).Cut

c = d

While c = d

c = Application.RandBetween(6, 25)

Wend

Range(Cells(4, c), Cells(23, c)).Insert shift:=xlToRight

d = Application.RandBetween(4, 23)

Range(Cells(d, 6), Cells(d, 25)).Cut

c = d

While c = d

c = Application.RandBetween(4, 23)

Wend

Range(Cells(c, 6), Cells(c, 25)).Insert shift:=xlDown

Next i

For c = 6 To 25

Range(Cells(4, c), Cells(23, c)).Interior.Color = Cells(3, c).Interior.Color

Next c

End Sub

Bonjour, après une analyse du code voici ci joint un fichier adapté, faut voir si ça marche comme vous le voulez...

En somme il est fait pour que le nombre de jour correspond au nombre de personnel.

@ bientôt

LouReeD

le forum

bonjour à tous

merci loureed

c'est impeccable comme boulot

difficile à réaliser à mon niveau

ma première idée était simplement de voir ce qu'il fallait modifier dans la macro de h2s04 pour comparer les deux et essayer de comprendre un peu l'écriture

Désolé...

As-tu essayé de remplacer :

20 par 16

23 par 19

et 25 par 21 ?

salut le forum

loureed pas être désolé c'est extra ce que tu as fait

steelson j'essaie avec ces données

merci pour ces cours

bonne journée

Bonjour,

code adapté pour le rendre dépendant de la variable nj (nombre de jours)

Sub tirage()
nj=20 <- mettre 16 pour 16 joursx16 personnes
njc=5+nj
njl=3+nj
For i = 1 To nj
Cells(4, i + 5) = Cells(i + 3, 1)
Next i
For i = 2 To nj
For j = 1 To nj
If j = nj Then
Cells(i + 3, j + 5) = Cells(i + 2, 6)
Else
Cells(i + 3, j + 5) = Cells(i + 2, j + 6)
End If
Next j
Next i
'melange colonne
For i = 1 To nj
d = Application.RandBetween(6, njc)
Range(Cells(4, d), Cells(njl, d)).Cut
c = d
While c = d
c = Application.RandBetween(6, njc)
Wend
Range(Cells(4, c), Cells(njl, c)).Insert shift:=xlToRight
d = Application.RandBetween(4, njl)
Range(Cells(d, 6), Cells(d, njc)).Cut
c = d
While c = d
c = Application.RandBetween(4, njl)
Wend
Range(Cells(c, 6), Cells(c, njc)).Insert shift:=xlDown
Next i
For c = 6 To njc
Range(Cells(4, c), Cells(njl, c)).Interior.Color = Cells(3, c).Interior.Color
Next c
End Sub

le forum bonjour

h2s04

merci pour ce complément

je regarde tout ça

bonne journée

tomatito37

Rechercher des sujets similaires à "adaptation macro h2s04 tirage aleatoire"