Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

trier 17000 et 13000 adresses

14 réponses
Avatar
Jceel
Bonjour le Wordiens et Wordiennes et Fakalo et à l'huile

une ch'tite question....
j'ai mis sur mon site un fichier " hosts" pour interdire 17048 sites de
pub... cul ...et porno...
un pote m'offre un autre fichier de 13000
ce sont des fichiers .TXT tout bêtes
comment concaténer les 2 et n'en faire qu'un seul en éliminant les
doublons..
chaque ligne est du type
127.0.0.1 a.r.tv.com
127.0.0.1 a.r.tv.org
127.0.0.1 a08.g.akamai.net
127.0.0.1 a1.g.akamai.net
127.0.0.1 a10.g.akamai.net
127.0.0.1 a100.g.akamai.net
127.0.0.1 a100.g.akamaitech.net
127.0.0.1 a1000.g.akamai.net
127.0.0.1 a1016.g.akamai.net
127.0.0.1 a1028.g.akamai.net
127.0.0.1 a104.g.akamai.net
127.0.0.1 a1040.g.akamai.net
127.0.0.1 a1066.g.akamai.net
127.0.0.1 a108.g.akamai.net



merci à toutes et toussent
et bon Dimanche

--
@++++Jceel - MVP Win, I E, Media Player

En vérité je te le dis mais sous O E
internaute indécis pour le HacheuTeuMeuLeu
seul le click droit Control+F deux
la lumière t'apportera C'est ce qu'il y a de mieux
netevangile..selon Jceel.livre du windows.psaume alt-255..verset ÿp
Jceel http://jceel.free.fr l'hyper du gratuit du net
Founding Chairman of the International Pebkac Busters Company

10 réponses

1 2
Avatar
FxM
Bonjour Ami Jceel,

Je vais me faire lyncher mais bon ;o))
Une réponse avec Excel te conviendrait-elle ?

Sinon, tu as hostess qui fait ce genre de choses (mais tu connais déjà)
http://accs-net.com/hostess/

@+
FxM




Jceel wrote:

Bonjour le Wordiens et Wordiennes et Fakalo et à l'huile

une ch'tite question....
j'ai mis sur mon site un fichier " hosts" pour interdire 17048 sites de
pub... cul ...et porno...
un pote m'offre un autre fichier de 13000
ce sont des fichiers .TXT tout bêtes
comment concaténer les 2 et n'en faire qu'un seul en éliminant les
doublons..
chaque ligne est du type
127.0.0.1 a.r.tv.com
127.0.0.1 a.r.tv.org
127.0.0.1 a08.g.akamai.net
127.0.0.1 a1.g.akamai.net
127.0.0.1 a10.g.akamai.net
127.0.0.1 a100.g.akamai.net
127.0.0.1 a100.g.akamaitech.net
127.0.0.1 a1000.g.akamai.net
127.0.0.1 a1016.g.akamai.net
127.0.0.1 a1028.g.akamai.net
127.0.0.1 a104.g.akamai.net
127.0.0.1 a1040.g.akamai.net
127.0.0.1 a1066.g.akamai.net
127.0.0.1 a108.g.akamai.net



merci à toutes et toussent
et bon Dimanche

--
@++++Jceel - MVP Win, I E, Media Player

En vérité je te le dis mais sous O E
internaute indécis pour le HacheuTeuMeuLeu
seul le click droit Control+F deux
la lumière t'apportera C'est ce qu'il y a de mieux
netevangile..selon Jceel.livre du windows.psaume alt-255..verset ÿp
Jceel http://jceel.free.fr l'hyper du gratuit du net
Founding Chairman of the International Pebkac Busters Company



Avatar
Jceel
Bonjour ...Anacoluthe et FxM qui nous ont dit
* Hello !
* > Bonjour Ami Jceel,
* > Je vais me faire lyncher mais bon ;o))
* > Une réponse avec Excel te conviendrait-elle ?
*
* Pourquoi lynché ????? :-D
* Word pour joindre et trier OK mais pour supprimer des doublons niet!
* J'utiliserais aussi Excel (Filtre élaboré Extraction sans doublon)
* 30000 lignes ça tient sur une feuille...
*
* Anacoluthe
* « C'est pas parce qu'on y voit double qu'à la fin on y voit mieux. »


je vais reveiller mon excel qui roupille depuis longtemps ;-)
merci à vous deux et bonne fin de Dimanche


--
@++++Jceel - MVP Win, I E, Media Player

En vérité je te le dis mais sous O E
internaute indécis pour le HacheuTeuMeuLeu
seul le click droit Control+F deux
la lumière t'apportera C'est ce qu'il y a de mieux
netevangile..selon Jceel.livre du windows.psaume alt-255..verset ÿp
Jceel http://jceel.free.fr l'hyper du gratuit du net
Founding Chairman of the International Pebkac Busters Company

Avatar
Jceel
Bonjour ...FxM qui nous as a dit
* Bonjour Ami Jceel,
*
* Je vais me faire lyncher mais bon ;o))
* Une réponse avec Excel te conviendrait-elle ?
*
* Sinon, tu as hostess qui fait ce genre de choses (mais tu connais
déjà)
* http://accs-net.com/hostess/


je ne connaissais cette url....
mais celle d'un pote US
http://www.mvps.org/winhelp2002/hosts.htm



--
@++++Jceel - MVP Win, I E, Media Player

En vérité je te le dis mais sous O E
internaute indécis pour le HacheuTeuMeuLeu
seul le click droit Control+F deux
la lumière t'apportera C'est ce qu'il y a de mieux
netevangile..selon Jceel.livre du windows.psaume alt-255..verset ÿp
Jceel http://jceel.free.fr l'hyper du gratuit du net
Founding Chairman of the International Pebkac Busters Company

Avatar
FxM
je vais reveiller mon excel qui roupille depuis longtemps ;-)
merci à vous deux et bonne fin de Dimanche


Quelle version aurait cet "ancêtre" ? Je suis en train de macroter cela
sous 2000. Vu les fonctions simples, ça devrait rouler aussi avec 97.

- choix des deux fichiers,
- tri, extraction
- écriture en fichier texte

@+
FxM

Avatar
Jceel
Bonjour ...FxM qui nous as a dit
* > je vais reveiller mon excel qui roupille depuis longtemps ;-)
* > merci à vous deux et bonne fin de Dimanche
*
* Quelle version aurait cet "ancêtre" ? Je suis en train de macroter
cela
* sous 2000. Vu les fonctions simples, ça devrait rouler aussi avec
97. *


je n'en suis qu ' à 2002 et 2003 beta 2 ...
pas encore en 2097..;-)
mais ça dort excel chez moi ;-(
bien que ça existe ;-)


--
@++++Jceel - MVP Win, I E, Media Player

En vérité je te le dis mais sous O E
internaute indécis pour le HacheuTeuMeuLeu
seul le click droit Control+F deux
la lumière t'apportera C'est ce qu'il y a de mieux
netevangile..selon Jceel.livre du windows.psaume alt-255..verset ÿp
Jceel http://jceel.free.fr l'hyper du gratuit du net
Founding Chairman of the International Pebkac Busters Company

Avatar
FxM
Bonsoir Jceel,

Tu trouveras en bas le code d'une macro qui :
- demande de continuer,
- demande le nom des deux fichiers,
- les ouvre,
- tri suivant le nom,
- élimine les doublons,
- écrit le résultat dans un fichier texte.

Et (uniquement si tu insistes) la même chose dans un fichier Excel de
43 ko dans ta BAL.

On peut faire la même chose à la main, mais c'est plus long.
Une limite : pas plus de 65536 lignes ;o(

Un coup d'oeil au résultat ne me paraît pas superflu (pour les deux
lignes qu'ajoute Norton, par exemple)

@+
FxM
PS : adresse anti-spam. Les personnes intéressées par une copie
peuvent le faire savoir ici-même ou sur MPFE






Jceel wrote:

Bonjour ...FxM qui nous as a dit

* > je vais reveiller mon excel qui roupille depuis longtemps ;-)
* > merci à vous deux et bonne fin de Dimanche
*
* Quelle version aurait cet "ancêtre" ? Je suis en train de macroter
cela
* sous 2000. Vu les fonctions simples, ça devrait rouler aussi avec
97. *



je n'en suis qu ' à 2002 et 2003 beta 2 ...
pas encore en 2097..;-)
mais ça dort excel chez moi ;-(
bien que ça existe ;-)


--
@++++Jceel - MVP Win, I E, Media Player

En vérité je te le dis mais sous O E
internaute indécis pour le HacheuTeuMeuLeu
seul le click droit Control+F deux
la lumière t'apportera C'est ce qu'il y a de mieux
netevangile..selon Jceel.livre du windows.psaume alt-255..verset ÿp
Jceel http://jceel.free.fr l'hyper du gratuit du net
Founding Chairman of the International Pebkac Busters Company




Sub test()
'vérifier pour continuer
rep = MsgBox("Ce fichier va regrouper deux fichiers en un seul" &
vbCrLf & _
"en vue de créer un fichier HOSTS." & vbCrLf & vbCrLf & _
"Voulez-vous continuer ?", vbYesNo + vbDefaultButton2)
If rep <> vbYes Then Exit Sub

' fichier 1
MsgBox "Choisissez le premier fichier.", vbInformation + vbOKOnly
var_chemin = ActiveWorkbook.Path
Chemin = ChoixDossierFichier(var_chemin, 1)
If Chemin = "" Then MsgBox "Vous n'avez rien choisi. Sortie !": Exit Sub
fichier1 = Chemin

'fichier 2
MsgBox "Choisissez le second fichier.", vbInformation + vbOKOnly
Chemin = ChoixDossierFichier(var_chemin, 1)
If Chemin = "" Then MsgBox "Vous n'avez rien choisi. Sortie !": Exit Sub
fichier2 = Chemin
statusbase = "Lire Fichier 1 - "

'lire fichier 1
a = 0: numero = FreeFile
Open fichier1 For Input As #numero
Do While Not EOF(1)
Line Input #numero, ligne
' et décomposer en deux colonnes
a = a + 1: pos1 = 1: pos1 = InStr(pos1 + 1, ligne, " ")
If pos1 = 2 Then pos1 = InStr(pos1 + 1, ligne, " ")
If pos1 <> 0 Then
ip = Replace(Mid(ligne, 1, pos1 - 1), " ", "")
site = Replace(Mid(ligne, pos1 + 1, Len(ligne)), " ", "")
Cells(a, 1) = ip: Cells(a, 2) = site: ip = "": site = ""
Application.StatusBar = statusbase & a & " ... " & ligne
End If
Loop
Close numero

'lire fichier 2
statusbase = "Lire Fichier 2 - "
Open fichier2 For Input As #numero
Do While Not EOF(1)
Line Input #numero, ligne
a = a + 1: pos1 = 1: pos1 = InStr(pos1 + 1, ligne, " ")
' et décomposer en deux colonnes
If pos1 = 2 Then pos1 = InStr(pos1 + 1, ligne, " ")
If pos1 <> 0 Then
ip = Replace(Mid(ligne, 1, pos1 - 1), " ", "")
site = Replace(Mid(ligne, pos1 + 1, Len(ligne)), " ", "")
Cells(a, 1) = ip: Cells(a, 2) = site: ip = "": site = ""
Application.StatusBar = statusbase & a & " ... " & ligne
End If
Loop
Close numero

'trier
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Application.StatusBar = "Tri en cours ..."
maxi = Range("A65536").End(xlUp).Row: Start = maxi
Range("A1:C" & maxi).Select
Selection.Sort Key1:=Range("B2"), Order1:=xlAscending,
Header:=xlYes, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom

'enlever les doublons
For a = maxi To 2 Step -1
Tag = False
Application.StatusBar = "Doublons ... Total:" & Start & "
(Doublons:" & Start - maxi & ") /ligne " & a
If Range("A" & a) <> "127.0.0.1" And Range("A" & a) <> "0.0.0.0"
Then Tag = True
If Range("B" & a) = Range("B" & a - 1) Then Tag = True
If Tag = True Then Range("A" & a).EntireRow.Delete: maxi =
Range("A65536").End(xlUp).Row
Tag = False
Next a
If Range("A1") <> "127.0.0.1" And Range("A1") <> "0.0.0.0" Then
Range("A1").EntireRow.Delete
Range("A1").Select
Application.ScreenUpdating = True
Application.StatusBar = False
Application.EnableEvents = True

'écrire le fichier temporaire
fichier = ActiveWorkbook.Path & "hosts.temp.txt"
statusbase = "Ecrire fichier " & fichier & " - "
Open fichier For Output As #1
Set ash = ActiveSheet
maxi = ash.Range("A65535").End(xlUp).Row
For a = 1 To maxi
Application.StatusBar = statusbase & a & " / " & maxi
ligne = " " & ash.Range("A" & a) & " " & ash.Range("B" & a)
Print #1, ligne
ligne = ""
Next a
Close #1
Application.StatusBar = False
'quitter sans enregistrer les modifs
ActiveWorkbook.Close (False)
End Sub

Function ChoixDossierFichier(Racine, Optional SelType As Byte = 0)
Dim objShell, objFolder, Chemin, SecuriteSlash, FlagChoix&, Msg$
If SelType = 0 Then
FlagChoix = &H1&: Msg = "Choisissez un dossier :"
Else
FlagChoix = &H4000&: Msg = "Choisissez un fichier :"
End If
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(&H0&, Msg, FlagChoix, Racine)
On Error Resume Next
Chemin = objFolder.ParentFolder.ParseName(objFolder.Title).Path & ""
If objFolder.Title = "Bureau" Then
Chemin = "C:WindowsBureau"
End If
If objFolder.Title = "" Then
Chemin = ""
End If
SecuriteSlash = InStr(objFolder.Title, ":")
If SecuriteSlash > 0 Then
Chemin = Mid(objFolder.Title, SecuriteSlash - 1, 2) & ""
End If
ChoixDossierFichier = Chemin
End Function


Avatar
Jceel
Bonjour ...FxM qui nous as a dit
* Et (uniquement si tu insistes) la même chose dans un fichier Excel
de
* 43 ko dans ta BAL.


oui n'hesite pas
* Un coup d'oeil au résultat ne me paraît pas superflu (pour les deux
* lignes qu'ajoute Norton, par exemple)


ne parle pas de ces couenneries d'anti-virus qui fachent

--
@++++Jceel - MVP Win, I E, Media Player

En vérité je te le dis mais sous O E
internaute indécis pour le HacheuTeuMeuLeu
seul le click droit Control+F deux
la lumière t'apportera C'est ce qu'il y a de mieux
netevangile..selon Jceel.livre du windows.psaume alt-255..verset ÿp
Jceel http://jceel.free.fr l'hyper du gratuit du net
Founding Chairman of the International Pebkac Busters Company

Avatar
Clément Marcotte
Bonjour,

Puisque le questionneur est bloqué chez moi, je réponds donc ici.

Un petit coup de scripting.dictionnary. Même pas besoin d'Excel.

Si votre version de Windows Scripting Host, ne supporte pas l'objet
Dictionnary, on peut télécharger la version 5.6 par là:

http://www.microsoft.com/downloads/details.aspx?displaylang=fr&FamilyIDç4494D3-C4E1-4E18-9C6C-0EA28C9A5D9D



Sub fusion()
Dim tableau As Object, adresse As String, reponse
Dim i As Integer
Set tableau = CreateObject("scripting.dictionary")
Open "c:mes documentsfichier1.txt" For Input As 1
Do While Not EOF(1)
Line Input #1, adresse
tableau.Add adresse, ""
Loop
Close 1
Open "c:mes documentsfichier2.txt" For Input As 1
Do While Not EOF(1)
Line Input #1, adresse
If Not tableau.Exists(adresse) Then
tableau.Add adresse, ""
End If
Loop
Close 1
reponse = tableau.keys
Documents.Open FileName:="fichierfusionne.txt",
ConfirmConversions:úlse, _
ReadOnly:úlse, AddToRecentFiles:úlse,
PasswordDocument:="", _
PasswordTemplate:="", Revert:úlse,
WritePasswordDocument:="", _
WritePasswordTemplate:="", Format:=wdOpenFormatAuto,
Encoding:52
Selection.WholeStory
Selection.Sort ExcludeHeader:úlse, FieldNumber:="Paragraphes", _
SortFieldType:=wdSortFieldAlphanumeric,
SortOrder:=wdSortOrderAscending, _
FieldNumber2:="", SortFieldType2:=wdSortFieldAlphanumeric,
SortOrder2:= _
wdSortOrderAscending, FieldNumber3:="", SortFieldType3:= _
wdSortFieldAlphanumeric, SortOrder3:=wdSortOrderAscending,
Separator:= _
wdSortSeparateByTabs, SortColumn:úlse, CaseSensitive:úlse,
LanguageID _
:=wdFrenchCanadian, SubFieldNumber:="Paragraphes",
SubFieldNumber2:= _
"Paragraphes", SubFieldNumber3:="Paragraphes"
Windows("fichierfusionne.txt").Activate
ActiveDocument.SaveAs FileName:="fichierfusionne.txt",
FileFormat:= _
wdFormatText, LockComments:úlse, Password:="",
AddToRecentFiles:=True, _
WritePassword:="", ReadOnlyRecommended:úlse,
EmbedTrueTypeFonts:úlse, _
SaveNativePictureFormat:úlse, SaveFormsData:úlse,
SaveAsAOCELetter:= _
False, Encoding:52, InsertLineBreaks:úlse,
AllowSubstitutions:úlse _
, LineEnding:=wdCRLF

End Sub


P.S IL y a de l,enregistreur de macros pour quelques lignes qui
pourraient sans doute être élaguées, mais j'ai la flemme.


"Anacoluthe" a écrit dans le message de
news:
Hello !

"FxM" nous a écrit ...
Bonjour Ami Jceel,
Je vais me faire lyncher mais bon ;o))
Une réponse avec Excel te conviendrait-elle ?


Pourquoi lynché ????? :-D
Word pour joindre et trier OK mais pour supprimer des doublons niet!
J'utiliserais aussi Excel (Filtre élaboré Extraction sans doublon)
30000 lignes ça tient sur une feuille...

Anacoluthe
« C'est pas parce qu'on y voit double qu'à la fin on y voit mieux. »
- CHANSON-PLUS-BIFLUORÉ





Avatar
FxM
Jceel wrote:

Bonjour ...FxM qui nous as a dit

* Et (uniquement si tu insistes) la même chose dans un fichier Excel
de
* 43 ko dans ta BAL.



oui n'hesite pas


C'est parti.

@+
FxM


Avatar
Jceel
Bonjour ...FxM qui nous as a dit
* C'est parti.


OK....... j'attends le facteur...
merci

tu lui as bien dit de taper fort à la porte...????????,,,,
rofl

--
@++++Jceel - MVP Win, I E, Media Player

En vérité je te le dis mais sous O E
internaute indécis pour le HacheuTeuMeuLeu
seul le click droit Control+F deux
la lumière t'apportera C'est ce qu'il y a de mieux
netevangile..selon Jceel.livre du windows.psaume alt-255..verset ÿp
Jceel http://jceel.free.fr l'hyper du gratuit du net
Founding Chairman of the International Pebkac Busters Company

1 2