Prima di questa riga

Set MyFile = ScriptObject.CreateTextFile(server.MapPath("\pub") & "\" & filename)

ho inserito la funzione che dà un nuovo nome al filename in base all'algoritmo e il file caricato nella cartella prenderà quel nome lì a prescindere dal nome di partenza.

Sorry, pensavo fosse qualcosa di più complicato