Supprimer automatiquement les doublons dans un fichier texte en VBScript

Je vous propose un petit script en VBScript permettant de supprimer toutes les lignes en double dans n’importe quel fichier texte sous Windows (CSV, INI, LOG, TXT, …).

Ce petit script vous évitera d’avoir à importer le fichier texte dans Excel, de créer une macro qui va balayer les lignes pour supprimer les doublons, puis d’exporter à nouveau le document en format texte.

Au delà de la simplicité, le processus est également beaucoup plus rapide qu’en passant par Excel.

Le script permet de modifier le directement le fichier source mais vous pouvez également écrire le résultat dans un nouveau fichier.

Copiez le code suivant dans un fichier portant l’extension .vbs

Voici une offre de notre annonceur


Const ForReading = 1
Const ForWriting = 2
Set objDictionary = CreateObject("Scripting.Dictionary")

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile _
("c:\namelist_source.txt", ForReading)

Do Until objFile.AtEndOfStream
strName = objFile.ReadLine
If Not objDictionary.Exists(strName) Then
objDictionary.Add strName, strName
End If
Loop

objFile.Close

Set objFile = objFSO.OpenTextFile _
("c:\namelist_cible.txt", ForWriting)

For Each strKey in objDictionary.Keys
objFile.WriteLine strKey
Next

objFile.Close

Remplacez c:\namelist_source.txt par le nom du fichier source dans lequel vous souhaitez supprimer des doublons et c:\namelist_cible.txt par le nom du fichier cible.

La source et la cible peuvent être identique si vous souhaitez écraser le fichier d’origine

Voici mon GPS pour faire du vélo ! Le Garmin Edge 830 est une vraie réussite avec une autonomie de plus de 15 heures cartographie activée et un écran tactile désormais absolument parfait qui réagit au doigt et à l'oeil, comme un smartphone.

Créez un itinéraire sur Strava ou sur Garmin Connect et il est aussitôt transmis à vote GPS. Si vous êtes pressé ou dans un lieu inconnu, le générateur de boucle vous guidera tout simplement. Si vous décidez de changer de prendre un autre chemin le recalcul est automatique et un nouvel itinéraire vous sera proposé.

Voir mon classement des meilleurs GPS pour en savoir plus !

GPS Vélo

2 commentaires sur “Supprimer automatiquement les doublons dans un fichier texte en VBScript”

  1. Bonjour,

    Ce script fonctionne sur les fichiers cr�es sous un �diteur.
    Si je cr�e un fichier en VB comme suit :

    Set wshshell = CreateObject(« wscript.shell »)
    Set Fic_monfic = fso.CreateTextFile(monfic, ForWriting, True)
    Fic_monfic.WriteLine « AAAA »
    …. etc

    les doublons sont supprim�s mais le retour est sur une seule ligne avec des s�parateurs ‘carr�s’ .

    AAAA � � � � � �CCC � � � � DD � �

    � repr�sentant un carr�.

    Comment puis-je r�gler ce probl�me de format dans ce script ?

    Merci de vos r�ponses.

Laissez un commentaire