FileSetAttrib ?
Start script, make read only, exit process set to normal? Or have I misunderstood?
Edit: Sorry, I see you don't want them to open it either... Depends how important it is, you could hide it, or make it system I suppose...
As this is not primarily a python forum, my guess is you're going to get a lot faster answer through a simple google search:
https://www.google.com/search?q=gui+designer+for+python&rlz=1C1GGRV_enUS752US752&oq=GUI+designer+for+&aqs=chrome.0.0j69i57j0l4.3063j0j8&sourceid=chrome&ie=UTF-8
Which would lead you to Python's own Wiki:
https://wiki.python.org/moin/GuiProgramming
Try this
Local $FileRead = FileRead($fileToRead) & @crlf
$strFileRead=stringregexpreplace($FileRead,"(.*?)(\r\n)(.*?)(\r\n)","$3,")
Regex parts are between braces ()
It splits every 2 lines in 4 parts and only copies the 3rd with a comma appended
excel close you should use
https://www.autoitscript.com/autoit3/docs/libfunctions/_Excel_Close.htm
Procesclose is not a good solution
Try
https://www.autoitscript.com/autoit3/docs/libfunctions/_Excel_Open.htm
It does stop when it reaches the array element/item count at $Sp[0] : which is 4 in your example. You can reverse the order by starting at the end instead - negative step value. So you can loop whichever direction you want.
For $l = $Sp[0] To 1 Step -1
$Out = "$Sp[" & $l & "]:" & $Sp[$l]
MsgBox($MB_SYSTEMMODAL , "Split", $Out )
Next
In fact 'Step 1' is never needed and can be removed from the first example.
Also you could split the string differently to produce more array elements (using a different delimiter). Try it!
$Sp = StringSplit ($Input, @CRLF, $STR_ENTIRESPLIT)
I recommend you look at _ArrayDisplay(). It will help you to understand how arrays work.