hola,

cuando dices que falla el update, cual es el error que muestra ?

has probado procesar un excel que haya sido creado con Office 2003, o sea que 
sea office 2003 puro, no que sea office 2007 guardado con compatibilidad a 
2003, me ha pasado que esto no siempre funciona.

Has la prueba create el excel con office 2003, y procesalo a ver que sucede.

saludos

--- El lun 1-jun-09, Jorge Monsalvo <[email protected]> escribió:

De: Jorge Monsalvo <[email protected]>
Asunto: [puntonet] Problema con Ado.Net y Excel
Para: [email protected]
Fecha: lunes, 1 de junio de 2009, 3:34 pm

Estimados,
 
Tengo el siguiente problema: Estoy tomando una planilla Excel creada con la 
version 2003 desde una aplicacion WinForms hecha en VS2005. Utilizo los objetos 
OleDbxxxx de Ado.Net para abrir la planilla, leer los datos y cargarlos en un 
DataGridView. Hasta aca todo bien, incluso puedo insertar nuevos registros 
utilizando un comando INSERT clásico. El problema surge cuando quiero hacer un 
UPDATE. Aparentemente se ejecuta sin problemas pero al cerrar el programa y 
volver a abrir la planilla sale una excepcion "La tabla externa no tiene el 
formato adecuado" y si uno abre la planilla con Excel se encuentra con que 
todos los registros se corrieron de lugar y se generan valores en null.
 
Valen las siguientes aclaraciones:
1.- La planilla contiene exclusivamente datos, no hay fórmulas ni macros ni 
siquiera tiene formatos especiales de celda (color, bordes, ancho).
2.- El error solo lo obtengo con diferentes configuraciones de máquina/sistema 
operativo/Framework instalados. Ejemplos:
    a.- El programa se desarrolló en una máquina con Vista Business + 
Frameworks desde 2.0 a 3.5 + Office 2007con sus service packs. Aqui todo 
funciona de maravillas.
    b.- Test en máquina con Windows XP+Frameworks 2.0 a 3.5 sin Office . Todo OK
    c.- Test en máquina con Windows XP+Framework 2.0 + Office 2003. Falla 
Update.
    En esta última máquina, por deducción simple y para probar, instalamos el 
Framework 3.5 pero sigue fallando el Update.
3.- Chequeamos la version del Jet.OLEDB 4.0 en todas las máquinas y estamos en 
el último service pack (8).
 

 La cadena de conexión es simple: 

string connectionstr = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data 
Source={0};Extended Properties=\"Excel 8.0;HDR=NO;\"", archivo);
 
Estoy un poco desconcertado en cuanto a  qué cosas me falta probar o verificar 
los requerimientos, asi que les pido que me guien un poco.
 
Muchas Gracias de antemano
Saludos
 
Jorge Monsalvo
 
 



      
¡Viví la mejor experiencia en la web!
Descargá gratis el nuevo Internet Explorer 8

http://downloads.yahoo.com/ieak8/?l=ar


      Yahoo! Cocina

Registrate y cargá tu receta. Podés ganar premios.

www.promorecetas.com

Responder a