Distribution de nombres dans EXCEL

Résolu
Bonjour,

Je cherche à distribuer aléatoirement des nombres, de 1 à 110 par ex, dans autant de lignes, sans doublon.
J'ai essayé la fonction ALEA, mais il faudrait en plus un calcul pour vérifier que dans la colonne le nombre n'existe pas encore...

Des idées ??

Merci !
Configuration: Windows XP
Internet Explorer 7.0

1 réponse

  1. Ben, du VB...

    Sub AléatoiresSansDoublon()
    '
    ' AléatoiresSansDoublon Macro
    ' Macro enregistrée le 07/02/2008 par LatelyGeek
    '
    'Initialisation du compteur

    Dim Compteur As Integer
    Compteur = 1
    'Premier positionnement
    Range("A1").Select

    'Boucle
    While Compteur <= 110
    'Affectation d'un nombre aléatoire compris entre 1 et le nombre de lignes
    ActiveCell.FormulaR1C1 = "=INT(RAND()*110)+1"
    'Compte sur la même ligne en colonne B du nombre de fois où cette valeur est présente dans la colonne A
    ActiveCell.Offset(0, 1).FormulaR1C1 = "=COUNTIF(C[-1],RC[-1])"
    'Vérifie si la valeur n'est présente qu'une fois
    If ActiveCell.Offset(0, 1).Value = 1 Then
    'Si oui, fait un collage spécial, remet la colonne B à blanc, rajoute 1 au compteur et passe à la ligne suivante
    Selection.Copy
    Selection.PasteSpecial Paste:=xlValues
    ActiveCell.Offset(0, 1).FormulaR1C1 = ""
    ActiveCell.Offset(1, 0).Select
    Compteur = Compteur + 1
    End If
    'Fin de la boucle
    Wend

    End Sub
    1