Este es un error que me ha traído de cabeza un par de horas, y la verdad es que el mensaje de error no da muchas pistas sobre la causa real. Microsoft da la explicación a este mensaje en su página de soporte
http://support.microsoft.com/kb/323626/en-us/, pero cuidado, en la traducción automática al español existe una pequeña incorrección que nos puede enredar aún más.
En resumen, y sin necesidad de entrar en explicar lo que es un fichero SYLK y otros detalles, el problema radica en que los dos primeros caracteres que se encuentran en el fichero son exactamente "ID" y es lo que provoca el error.
Solución: Microsfot propone insertar delante el carácter apóstrofo (es decir, 'ID); pero también bastaría con cambiar estos caracteres, por ejemplo, podemos utilizar "Id" o también "id" o "iD". Pues eso, que (alguna vez) os sea útil.