What you're showing is not fixed width, fixed width means all columns use the same number of spaces so the next column always starts on the same column.
i.e.:
Code:
30151942788001 010011100 BLUESTONE SALES &DISTRIBUTION 26 OAKTREE BUSINESS PARK
30151971666001 010011100 Gmcheques UNIT 1 & 2
30151919069001 010011100 MR. BRIAN MURRAY M.D. 23A MOYLE ROAD
If this is what you actually want you will want to define the column width for each field then pad it with spaces:
Code:
Private Sub btnRunOrders_Click()
Dim StrFileName, StrPath As String
StrFileName = "Bray.txt"
StrPath = "U:\"
Open StrPath & StrFileName For Output As #1
Print #1, "This is a dynamic header" & "9999999"
Dim Rs As DAO.Recordset
Set Rs = CurrentDb.OpenRecordset("tblBrayOrder")
Do Until Rs.EOF
Print #1, left(Rs("SortCode") & string(16, " "), 16) & left(Rs("AccNo") & string(11, " "), 11) & left(Rs("Static1") & string(32, " "), 32) >>>----> and so on
Rs.MoveNext
Loop
Close #1
Rs.Close
Set Rs = Nothing
End Sub