Éstos son mis opiniones:
1
. El uso del proveedor OLEDB
se ajustará solo a sus necesidades si tiene tablas estructuradas simples y uniformes. No lo ayudará mucho, por ejemplo, si tiene que extraer cualquier información de formato de celda. El algoritmo erróneo de "tipo de filas" del motor Jet puede hacer que este enfoque sea casi inutilizable. Pero si el tipo de datos puede identificarse de manera exclusiva a partir de las primeras filas de cada tabla, este enfoque puede ser suficiente. Pro: es rápido y funciona incluso en máquinas donde MS Excel no está instalado.
2
. Objeto de interoperabilidad de Excel
puede ser muy lento, especialmente en comparación con la opción 1, y necesita instalar MS Excel. Pero tiene acceso completo al modelo de objetos de Excel, puede extraer casi toda la información (por ejemplo: información de formato, colores, marcos, etc.) que está almacenada en su archivo de Excel y sus hojas pueden ser tan complejas estructuradas como desee.
3
. Vuelque los datos de Excel a la base de datos y utilice el procedimiento
depende del tipo de vuelco de base de datos que tenga en mente y si tiene un sistema de base de datos a mano. Si está pensando en tener acceso a MS, esto usará internamente el motor Jet de nuevo, con los mismos pros y contras del enfoque 1 anterior.
Otras opciones:
4
. escriba una macro de Excel VBA para leer los datos que necesita y escribirlos en un archivo de texto. Lea el archivo de texto de un programa C#. Pro: mucho más rápido que el enfoque 2, con la misma flexibilidad para acceder a la metainformación. Con: tienes que dividir tu programa en una parte VBA y una parte C#. Y necesita MS Excel en su máquina.
5
. Use una biblioteca/componente de terceros para esta tarea. Hay muchas bibliotecas para el trabajo, gratuitas y comerciales. Simplemente pregúntale a Google, o busca aquí en SO.Muchas de esas librerías no requieren MS Excel en la máquina, y suelen ser la mejor opción si va a extraer los datos como parte de un proceso de servidor.
Su pregunta no está clara. Lea acerca de cómo hacer preguntas sobre SO aquí: http://tinyurl.com/so-hints – Oded