Tenho um script ASP que lê informações de um banco de dados para gerar um relatório em Excel.
Para gerar o formato excel, escrevo todo o conteúdo com tags em formato de tabela (<table>, <tr>, <td>) e seto o ContentType da página como "application/vnd.ms-excel" (Response.ContentType = "application/vnd.ms-excel"). Até aí, tudo bem, o relatório é gerado direitinho.
O problema ocorre no fato de que este relatório deve conter fórmulas e as fórmulas são escritas de forma diferente em cada idioma. Na linha onde deve conter, por exemplo, uma fórmula de soma, eu coloco "=SOMA(A1:A10)". Quando eu acesso minha aplicação a partir de um computador de possui o Office em português, a fórmula funciona corretamente. Quando acesso em um computador com Office em inglês aparece aquela mensagem de erro que o Excel dá quando uma fórmula está incorreta.
Já no limite do desespero, eu achei que isso pudesse ser um problema do Excel (da própria ferramenta, e não da versão gerada a partir de um script), então criei uma planilha em Excel português contendo a fórmula "SOMA". Quando abri essa planilha no Excel em inglês, automaticamente ele identifica a fórmula e a mesma aparece como "SUM". Ou seja, o Excel em si consegue fazer esse "de->para" entre fórmulas quando abertas em idiomas diferentes. Agora, como fazer que um Excel gerado a partir de um script ASP também consiga fazer isso?
Acredito que ou essa versão gerada de Excel a partir da mudança do ContentType é muito limitada e isso não é possível de ser feito (o que seria um grande problema para aplicações acessadas de diferentes países, como é o meu caso), ou falta setar alguma coisa no cabeçalho da página.
Pergunta
Isabella Gomes
Olá pessoal, boa noite!
Preciso de uma ajuda com o seguinte problema:
Tenho um script ASP que lê informações de um banco de dados para gerar um relatório em Excel.
Para gerar o formato excel, escrevo todo o conteúdo com tags em formato de tabela (<table>, <tr>, <td>) e seto o ContentType da página como "application/vnd.ms-excel" (Response.ContentType = "application/vnd.ms-excel"). Até aí, tudo bem, o relatório é gerado direitinho.
O problema ocorre no fato de que este relatório deve conter fórmulas e as fórmulas são escritas de forma diferente em cada idioma. Na linha onde deve conter, por exemplo, uma fórmula de soma, eu coloco "=SOMA(A1:A10)". Quando eu acesso minha aplicação a partir de um computador de possui o Office em português, a fórmula funciona corretamente. Quando acesso em um computador com Office em inglês aparece aquela mensagem de erro que o Excel dá quando uma fórmula está incorreta.
Já no limite do desespero, eu achei que isso pudesse ser um problema do Excel (da própria ferramenta, e não da versão gerada a partir de um script), então criei uma planilha em Excel português contendo a fórmula "SOMA". Quando abri essa planilha no Excel em inglês, automaticamente ele identifica a fórmula e a mesma aparece como "SUM". Ou seja, o Excel em si consegue fazer esse "de->para" entre fórmulas quando abertas em idiomas diferentes. Agora, como fazer que um Excel gerado a partir de um script ASP também consiga fazer isso?
Acredito que ou essa versão gerada de Excel a partir da mudança do ContentType é muito limitada e isso não é possível de ser feito (o que seria um grande problema para aplicações acessadas de diferentes países, como é o meu caso), ou falta setar alguma coisa no cabeçalho da página.
Alguém tem alguma ideia?
Obrigada!!!
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.