RE:Problemas al exportar a excel 2003
Si no me equivoco haces referencia a Microsoft Excel 12.0 Object Library.
Así, cuando declaras las variables lo haces con tipo Excel.Application, Excel.Workbook, etc.
En realidad no es incorrecto hacerlo de esa manera, sin embargo, esto lo hace dependiente de la versión, en este caso el 12.0 (para 2003 es 11.0, para 2002 es 10.0 and so on).
Para evitar la dependencia, lo que puedes hacer es quitar la referencia y declarar las variables, en lugar de oner Excel.[Algo] (que de hecho ya no te lo permitiría), ponlas tipo variant y al crear el Ole, que este se encargue de asignarles lo que deben tener.
Algo como esto:
Dim xlApp As Variant
Dim xlBook as Variant
Dim xlSheet as Variant
Set xlApp = CreateObject("Excel.Application") 'Crea la instancia
xlApp.Visible = True 'Muestra Excel
Set xlBook = xlApp.Workbooks.Add 'Crea el libro
Set xlSheet = xlBook.ActiveSheet 'Asigna la hoja
Ahora, si en el CreateObject pones "Excel.Application.12" harás que sólo funcione para Excel 2007. Si pones "Excel.Application.11" sólo lo hará para la versión 2003. Es por esto que no incluyo la versión, para que al crearse el objeto lo haga con la versión de Excel instalada.
Ojalá que no te represente mucho trabajo, pero si así es, recláma presupuesto para que todos tengan Excel 2007 y te evites hacer el cambio.
Espero que te sirva.
Saludos.