Obrigado pela inspiração.
Acabei de passar por outro código que facilitou muito. Porque eu só queria adicionar o arquivo no diretório do qual estou trabalhando, mas queria tornar o vba dinâmico.
Então usei ActiveWorkbook.FullName
em vez de ActiveWorkbook.Name
.
Eu também adicionei o nome da folha a ele em " - " & ActiveSheet.Name &
Este é o código final (também adicionado o nome da folha):
Public Sub Worksheet_naar_TXT_Pipe_delimiter()
Const DELIMITER As String = "|"
Dim myRecord As Range
Dim myField As Range
Dim nFileNum As Long
Dim sOut As String
nFileNum = FreeFile
Open ActiveWorkbook.FullName & " - " & ActiveSheet.Name & ".txt" For Output As #nFileNum
For Each myRecord In Range("A1:A" & _
Range("A" & Rows.Count).End(xlUp).Row)
With myRecord
For Each myField In Range(.Cells, _
Cells(.Row, Columns.Count).End(xlToLeft))
sOut = sOut & DELIMITER & myField.Text
Next myField
Print #nFileNum, Mid(sOut, 2)
sOut = Empty
End With
Next myRecord
Close #nFileNum
End Sub
Obrigado pela sua resposta, isso me trouxe à ideia!