Maybe this
It uses the WB path and name to create a TDL with a .txt extension
The macro (as it is currently written) must be in the same workbook as the data
Option Explicit
Sub GenerateTDL()
Dim rData As Range, rRow As Range
Dim fileNum As Long
Dim filePath As String
Dim fileLine As String
Dim i As Long
Dim vTemp As Variant
'get TDL file name = WB path + name + TXT
i = InStrRev(ThisWorkbook.FullName, ".")
filePath = Left(ThisWorkbook.FullName, i) & "txt"
'get data to use
Set rData = ActiveSheet.Cells(1, 1).CurrentRegion
'delete if already exists
Application.DisplayAlerts = False
On Error Resume Next
Kill filePath
On Error GoTo 0
Application.DisplayAlerts = True
'create TDL file
fileNum = FreeFile
Open filePath For Output As #fileNum
'get a row, combine with tabs, and remove trailing
For Each rRow In rData.Rows
Application.StatusBar = "Processing " & Format(rRow.Row, "#,##0")
vTemp = Application.WorksheetFunction.Transpose(Application.WorksheetFunction.Transpose(rRow))
fileLine = Join(vTemp, vbTab)
Do While Right(fileLine, 1) = vbTab
fileLine = Left(fileLine, Len(fileLine) - 1)
Loop
Print #fileNum, fileLine
Next
Close #fileNum
MsgBox "Wrote " & rData.Address & vbCrLf & vbCrLf & " as tab deliminated " & vbCrLf & vbCrLf & filePath
End Sub