rewrite this prompt so that there will be lesser chance of failure of the script but keep the specific names 'Write a powershell script to read an excelfile and abc.xlsx and take Ec number from Ihr Zeichen(column A), NAME_1 (column B), Datum Erstattungsbescheid (column C), Datum Posteingang (column D), Unternehmensbezeichnung (column E) and make a new excel file with column  A (Ihr Zeichen), B (Erstattungsbescheid),  C (Vorfrist), D (Widerspruchsfrist), where column C (vorfrist) will be the first deadline which will be the first working day according to the german calender after 30 days of Erstattungs bescheid date from column c of the original excel file; where column D (Widerspruchsfrist) will be the second deadline which will be the first working day according to the german calender after 30 days of the newly updated vorfrisst date in column c in the current file. this script will be run every work day at 10:00 cet and it will make a executionlog file of the date it has been automatically executed only if there's no such file is found and the next time it will rewrite the new date after executing it self in the logfile, the script will generate a warning log file, if the date of getting executed is greater than 2 working days and it will write 'the script was not executed between these dates' ans will mention the dates. The script will know it by reading the executionlogfile of the executed dates, the script will run fine if there's no such executionlog  file, and it will create one. The script will execute the data which is maximum one week in the past in relation with today (execution date as reference), the date of the data is in the column C(Datum Erstattungsbescheid). if the execution log informs the script that this date is already executed the script will generate the log that, no new dates to add. and no new excel file will be generated'