essayez ceci:
Sub Position_Cercle()
Dim Lig As Long, Col As Long, i As Long
Randomize
For i = 1 To 6 'de 1 à 5 positions affichées
Lig = Int((16 - 5 + 1) * Rnd) + 5 'position de la ligne
Col = Int((16 - 5 + 1) * Rnd) + 5 'position de la colonne
With ActiveSheet.Shapes("Cercle")
.Top = Cells(Lig, Col).Top 'position de la ligne la cellule correspondante
.Left = Cells(Lig, Col).Left 'position de la colonne la cellule correspondante
End With
DoEvents
DoEvents
Tempo
Next i
'Retour à la position de départ
With ActiveSheet.Shapes("Cercle")
.Top = Cells(6, "R").Top
.Left = Cells(6, "R").Left
End With
End Sub
Sub Tempo()
For j = 1 To 60000000
Next j
End Sub
pour la temporisation, modifiez la valeur 60000000 pour augmenter ou diminuer la durée de temporisation.
pour les questions A et B: vous avez tout compris
Cdlt
Si cela vous convient, passez le post en "Résolu".