Réponse acceptée !
Salut
-1- Si tu écrit avec
Open Output dans un fichier, celui-ci sera réinitialisé.
Dans ton premier exemple de code, le fichier ne contiendra que le contenu de Text1 et les éventuelles premières données stockées dans ce même fichier disparaitront.
Voir
Open Append-2- Hélas, un fichier texte n'est pas un fichier indexé
Impossible donc de supprimer une donnée en plein milieu.
Tel que tu procèdes, lire d'une seule traite le fichier dans
varTemp -->
MyData(), il te suffit donc de supprimer
myData(x) de ton tableau.
C'est donc du traitement de tableau.
Il faut :
- Créer un deuxième tableau de même dimension - 1 (puisque tu supprime une donnée)
Dim newData(0 To UBound(myData) - 1) As String- Créer une boucle
For-Next pour recopier les données de myData vers newData :
monIndex = 0
For r = 0 à UBound(myData)
- Quand tu veux sauter une des données de myData, tu ne fais rien
- Quand tu rencontres une donnée à conserver :
If r <> 7 Then ' 7 dans ton exemple
newData(monIndex) = myData(r)
monIndex = monIndex + 1
End If
- Et tu finis par un
Next rLes nouvelles données sont maintenant dans
newData()
A toi de les restocker dans le fichier
Vala
Jack,
MVP VBNB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)