How about something like:
Sub cutaneous() Dim s As String Close #1 Close #2 Open "C:\TestFolder\sample.txt" For Input As #1 Open "C:\TestFolder\samp2.txt" For Output As #2 With CreateObject("System.Collections.ArrayList") Do Until EOF(1) Line Input #1, s .Add Trim$(CStr(s)) Loop .Sort ary = .ToArray For L = LBound(ary) To UBound(ary) Print #2, ary(L) Next End With Close #1 Close #2 End Sub