Bonjour à tous,

Je suis débutante en VBA et j'ai codé une macro qui consiste à sélectionner aléatoirement des titres en s'assurant qu'ils soient tous distincts. La macro prend en paramètre le nombre de titres que l'on souhaite avoir dans son PF. Voici mon code :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
'Etape 1 : Selection aléatoire des titres du portefeuille
Sub Creation_PF(Nb_titres_PF)
    Dim Position As Integer, Nb_Titres_OK As Integer, Titre As Integer
    Dim Pointeur As Integer, test As Boolean
    Position = 1 ' On démarre le tableau à la 1ere ligne
    Nb_Titres_OK = 0 'Pour l'instant aucun titre ditinct
    Do
        Randomize 'Initialisation du générateur aléatoire
        Titre = Int(Rnd() * 50) + 1 'On tire un titre au hasard
        Pointeur = 1
        test = False
        While Pointeur <= Position And test = False ' La variable test nous évite de _
        tous les éléments
            If Numeros_titre(Pointeur) = Titre Then               
 test = True
            End If
            Pointeur = Pointeur + 1
        Wend
        If test = False Then
            Numeros_titre(Position) = Titre
            Nb_Titres_OK = Nb_Titres_OK + 1
            Position = Position + 1
        End If
    Loop While Nb_Titres_OK < Nb_titres_PF
End Sub
Lorsque j'utilise la fonction Debug de VBA, il me signale que la ligne qui pose problème est la ligne 23. VBA me notifie une erreur : "Run-time error '9' : Subscript out of range.
J'ai revu mon code un nombre incalculable de fois mais je ne vois vraiment pas ou est l'erreur.
Pourriez-vous m'aider ?


Merci beaucoup.