"it's a file that will be supplied multiple times a day so it's not feasible to convert it every time."
You have to give us more background information.
"and contains macro's causing it to be a .xlsm file."
Why not cange that macro so the file format is .txt
This Little macro opens a .xlsm file and saves it as a .txt file
ActiveWorkbook.SaveAs Filename:="XXXXX\YYYY.txt", FileFormat:= _