Ir para conteúdo
Fórum Script Brasil
  • 0

Incompatibilidade de idioma em Excel exportado por script ASP


Isabella Gomes

Pergunta

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

  • 0

pelo que vi aqui... de forma rápida... não tem como formulas em ingles não funciona no portugues...

=if(1=1;1;0) <> =se(1=1;1;0)

ai te digo que é mais facil criar um relatorio estatico do que se preocupar se o cliente tem office em portugues / ingles o se tem o office instalado.

Link para o comentário
Compartilhar em outros sites

  • 0
pelo que vi aqui... de forma rápida... não tem como formulas em ingles não funciona no portugues...

=if(1=1;1;0) <> =se(1=1;1;0)

ai te digo que é mais facil criar um relatorio estatico do que se preocupar se o cliente tem office em portugues / ingles o se tem o office instalado.

Bareta, obrigada pela resposta!

Essa solução de colocar os valores estáticos eu já utilizava, mas agora estou precisando mudar e colocar as fórmulas porque os arquivos serão manipulados, ou seja, linhas serão excluídas e adicionadas após a exportação e os totais devem continuar sendo calculados corretamente, para isso acontecer, só colocando fórmula mesmo.

Tem ideia se com a utilização de componente isso é possível? Eu acredito que talvez gerar um excel a partir de um componente possa ser mais "fiel" aos recursos da ferramenta do que um excel gerado a partir da mudança do contenttype.

Obrigada!

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...