Pergunta

Eu preciso manuplate um livro folha de excel (adicionar folhas / adicionar dados / Ocultar colunas / células protegem com a senha / mudar campo de conteúdo / etc etc)

Eu deveria usar o COM objetos fornecidos pela Microsoft (mas então eu acho que eles têm alguns problemas que estão sendo usados ??em asp.NET)

ou há um bom (commurcial ou livre) library / plug-in a ser usado para fazer este tipo de actividade.

Por favor, ajude

Foi útil?

Solução

Folha tentativa propagação engrenagem componente de terceiros

http://www.spreadsheetgear.com/

Outras dicas

A maneira mais fácil que eu encontrei é usar a Excel formato XML . Dessa forma, você pode editar uma folha de Excel como qualquer outro arquivo XML. Para ver como Excel oculta colunas ou protege-los com uma senha, fazer essas coisas manualmente e ver como o Excel guarda-los como XML. Esta é uma brisa ao código acima, ele é estável rock, e é rápido.

Manipulando arquivos nativos do Excel é mais difícil: você pode usar o COM objetos com o módulos de interoperabilidade primários . Na minha experiência, isso é muito difícil de acertar. No melhor dos casos, o Excel deixa cópias antigas de si mesmo ao redor, que você pode atenuar com uma redefinição de servidor noturno programado. No pior caso, o Excel irá travar aleatoriamente, fazendo seu web site sem resposta.

Outra forma de trabalhar com arquivos nativos do Excel é Visual Studio Tools for Office . É certamente mais fácil de usar do que interoperabilidade, e funciona melhor do Visual Basic:

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

C # carece de parâmetros opcionais, e abrindo uma pasta de trabalho torna-se algo de uma piada de mau gosto:

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

Eu não mergulhar muito longe para VSTO porque manipulação de XML funcionou tão bem para mim. Talvez outras pessoas podem comentar sobre como ele funciona em um site ASP.NET.

Com SpreadsheetGear você tem acesso completo ao doc Excel e toda a capacidade macro, incluindo a capacidade de proteger e células un-protect, colunas, etc temos a mesma coisa que você está descrevendo, exceto em WinForms.

Temos usado os objetos COM e eu não posso recomendá-lo. Em grande problema é que os objetos nunca ter lançado ...

Agora usamos o componente de software Gembox. Tê-lo usado por dois anos e funciona OK, é um pouco mais barato do que o que já relatado acima, que eu não sabia antes de vê-lo aqui.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top