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 :
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.
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
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.







Répondre avec citation


pour chaque message ayant aidé puis sur
pour clore cette discussion …
Partager