Basta escrever no arquivo em vez de passar por outro WB.
Option Explicit
Sub CreateBatch()
Dim myPathTo As String
myPathTo = "C:\path\to\mybatch.bat"
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim batchFile As Object
Set batchFile = fso.CreateTextFile(myPathTo)
Dim lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
Dim i As Long
For i = 1 To lastRow
batchFile.write Cells(i, 1) & vbNewLine
Next
batchFile.Close
Set fso = Nothing
Set batchFile = Nothing
End Sub