Estou pesquisando um exemplo de código para que eu consiga gerar um arquivo excel e neste arquivo montar 3 planilhas com dados vindo de uma tabela. Este arquivo é para ser usado na exportação de produtos para o Correios Net Shopping (estou citando caso haja alguém que já tenha feito ou esteja a procura da solução para o mesmo problema).
Já tentei no código criar por exemplo 3 tabelas mas não deu certo, ele coloca uma abaixo da outra. Já tentei criar 3 bodys mas ele ignora os 2 ultimos. Não encontrei maiores referências sobre isso na internet.
Obrigado
Bom, mais uma vez o meu Senso Autodidata me ajudou!
Vou postar aqui um código de exemplo que responde a minha pergunta, pode ser que seja útil para alguém um dia. A princípio o que eu entendi é que para uma manipulçao mais detalhada do arquivo nenhum desses exemplos que fornecem por aí serve, infelizmente... O jeito é trablhar diretamente com o objeto Excel.Aplication que fornece um tratamento completo do arquivo excel. Aí vai:
[codebox] Set ObjExcel = Server.CreateObject("Excel.Application")
ObjExcel.Visible = False
ObjExcel.DisplayAlerts = False
ObjExcel.UserControl = False
'Você pode usar um FSO para criar um arquivo .xls ou já ter este. O caminho deve ser o endereço físico completo! c:/blablabla
caminho_planilha= ""
'Abre o arquivo Excel
Set Planilha = ObjExcel.Workbooks.Open(caminho_planilha)
' Seleciona a Folha da Planilha que vamos trabalhar, se omitido, por padrão é sempre a primeira.
' Lembrando que o Excel não trabalha com índice 0 começa do 1
Set Folha = Planilha.Sheets.item(1)
' Para adicionar uma nova planilha ao projeto, usamos o metodo add([Depois de tipo number]) e abaixo vou renomear a planilha
Planilha.Sheets.add(1)
Planilha.Sheets.item(2).name = "Nova Folha"
' Agora vou mudar de Folha para trabalhar em outra Folha
Set Folha = Planilha.Sheets.item(2)
'Agora um exemplo a grosso modo de como gravar um dado
Folha.cells(1,1).value = "Teste" '(linha, coluna) sempre number!
'E para ler a celula
Response.write Folha.cells(1,1)
'Importante Salvar o Projeto senão ñ haverá alteração no arquivo, então
Planilha.Save
'Muito importante o uso do close pois senão ele deixa um processo EXCEL.EXE aberto no servidor
Planilha.close
Set Planilha = nothing
Set Folha = Nothing
Set ObjExcel = Nothing
[/codebox]
Espero que seja útil a alguém!
Edição feita por: Xclick, 04/09/2008, 12:49.