Tableau Dynamique : Valeur hors indice
Bonjour,
Je travaille sur un script qui utilise un tableau dynamiques d'objets.
Ces objets proviennent de valeurs extraites d'un fichier de configuration.
Je dois avoir 13 objets donc 13 cases dans mon tableau soit 12 comme résultat de Ubound.
Hors j'ai un indice en dehors de la plage ! :calim2:.
Et je ne comprends pas pourquoi.
Code:
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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
| Set FileConfig = fso.OpenTextFile(ConFich,ForReading,True)
FileConfig_data = FileConfig.ReadAll
NbLignesNow = FileConfig.Line
FileConfig.Close
arrLines = Split(FileConfig_data,vbCrLf)
If ( NbLignesNow <> NbLignesAvant ) Then
For i = 0 To UBound(arrLines)
Set seuilOK = a.Execute(arrLines(i))
If (seuilOK.count<>0) Then
'** Création d'une nouvelle matière **
'Augmentation du tableau
Redim Preserve value(i) 'Un tableau dynamique doit être initialisé la première fois !
Set value(p)=new Matiere
'** Récupération du code Matière **
tableau = Split(arrLines(i),"_")
valeur = tableau(1)
tableau1 = Split(valeur,"=")
Code = tableau1(0)
'MsgBox(Code)
value(p).codeM=Code
'** Récupération Seuil Matière Autorisé **
tab = Split(arrLines(i),"=")
seuilAjustement = tab(1)
sAjust = Replace(seuilAjustement,".",",")
seuilConf = Csng(sAjust)
'MsgBox(seuilConf)
value(p).seuilM= seuilConf
'** Récupération de l'intitulé matière **
tab1 = Split(arrLines(i+1),"=")
descM = tab1(1)
descMatiere = Replace(descM,".",",")
value(p).descriptionM=descmatiere
'** Récupération de la taille de l'unité de stock **
tab2 = Split(arrLines(i+2),"=")
qStd = tab2(1)
quantiteStd = Replace(qStd,".",",")
value(p).quantiteM=quantiteStd
'** Récuperation unité de poids **
tab3 = Split(arrLines(i+3),"=")
unitMatiere = tab3(1)
value(p).uniteM=unitMatiere
p=p+1
End If
Next
MsgBox("Rajout de lignes " & diffLignes)
ReDim Preserve value (UBound(value) + diffLignes)
NbLignesAvant = NbLignesNow
Else
MsgBox("Pas de changement")
End If
MsgBox(Ubound(value)) |
Question :
- Mon tableau dynamique value() est-il supprimé en sortie de boucle ?
* ce que je ne souhaite pas,au passage *
- Est-il possible de maintenir les valeurs d'un tableau pour les futurs exécution ?
* c'est ma boucle If ( NbLignesNow <> NbLignesAvant ) qui doit modifiée le tableau sinon il doit rester intact. *
Des idées ?
Merci.
Miistik.