Pregunta

Necesito manuplate un libro de hoja de Excel (añadir hojas / agregar datos / Ocultar columnas / proteger a las células con la contraseña contenido Campos / cambiar / etc, etc)

debería utilizar los objetos COM proporcionados por Microsoft (pero entonces yo creo que tienen algunos problemas que se utilizan en asp.NET)

o hay una buena biblioteca (commurcial o libre) / enchufe para ser utilizado para hacer este tipo de actividad.

por favor ayuda

¿Fue útil?

Solución

tratar componente terceros hoja de cálculo Gear

http://www.spreadsheetgear.com/

Otros consejos

La forma más sencilla que he encontrado es utilizar la Excel formato XML . De esa manera se puede editar una hoja de Excel como cualquier otro archivo XML. Para ver cómo se esconde Excel columnas o los protege con una contraseña, hacer las cosas de forma manual y ver cómo Excel las guarda como XML. Esto es muy fácil de codificar para arriba, es muy estable, y es rápido.

La manipulación de archivos nativos de Excel es más difícil: se pueden utilizar los objetos COM con el noreferrer ensamblados de interoperabilidad primarios . En mi experiencia, esto es muy difícil de hacerlo bien. En el mejor de los casos, Excel hojas viejas copias de sí mismo en todo, que se puede mitigar mediante un restablecimiento de la noche, de servidor. En el peor de los casos, Excel se bloquea al azar, por lo que su sitio web no responde.

Otra manera de trabajar con archivos nativos de Excel es Visual Studio Tools para Office . Es ciertamente más fácil de usar que la interoperabilidad COM, y funciona mejor desde Visual Basic:

Application.Workbooks.Open("Workbook.xls")

C # carece de parámetros opcionales, y la apertura de un libro de trabajo se convierte en una especie de broma de mal gusto:

Application.Workbooks.Open(@"Workbook.xls",
    missing, missing, missing, missing, missing, missing, missing,
    missing, missing, missing, missing, missing,missing, missing);

Yo no buceo muy lejos en VSTO debido a la manipulación de XML funcionó tan bien para mí. Quizás otras personas pueden hacer comentarios sobre cómo funciona en un sitio web de ASP.NET.

SpreadsheetGear usted tiene acceso completo a la doc Excel y toda la capacidad macro incluyendo la capacidad de proteger y las células, columnas, etc. des-proteger Tenemos la misma cosa que usted está describiendo excepto en Windows Forms.

Hemos utilizado los objetos COM y no se puede recomendar. En gran problema es que los objetos no son liberados ...

Ahora usamos el componente de software de Gembox. Lo han utilizado durante dos años y trabaja bien, es un poco más barato que el que metioned arriba, que no sabía antes de ver aquí.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top