Descrição:
Como posso manipular (ler/escrever) arquivos Excel a partir do Elipse E3/Power?
Solução:
O Microsoft Excel é um editor de planilhas produzido pela Microsoft para computadores que utilizam o sistema operacional Microsoft Windows, além de computadores Macintosh da Apple Inc. e dispositivos móveis como o Windows Phone, Android ou o iOS. Seus recursos incluem uma interface intuitiva e capacitadas ferramentas de cálculo e de construção de tabelas.
Conforme já vimos anteriormente no artigo KB-12658: Como ler/escrever em arquivos texto (TXT) pelo E3, é possível ler/escrever dados de arquivos de texto (TXT) utilizando os métodos do objeto FileSystemObject. Nosso presente artigo utilizará portanto uma lógica semelhante ao propor uma solução para ler/escrever arquivos do Excel via Elipse E3/Power. Neste caso, no entanto, iremos variar o objeto de sistema e optar por um objeto específico para a manipulação de arquivos Excel. O objeto do sistema indicado para tratar desse tipo de arquivo é o EXCEL.APPLICATION, e a solução explora os seus principais métodos e propriedades, bem como seus objetos internos.
Exemplos:
** Script para criar arquivo excel** Dim objExcel,objWorkBook Set objExcel = CreateObject("EXCEL.APPLICATION") Set objWorkBook = objExcel.Workbooks.add objWorkBook.SaveAs "C:\arq3.xlsx" objWorkBook.Close objExcel.Quit Set objWorkBook = Nothing Set objExcel = Nothing ** Script para criar nova planilha no arquivo** Dim objExcel,objWorkBook Set objExcel = CreateObject("EXCEL.APPLICATION") Set objWorkBook = objExcel.Workbooks.open ("C:\arq3.xlsx") objWorkBook.Sheets.Add ** Script para adicionar informação no arquivo** Dim objExcel,objWorkBook,sheet Set objExcel = CreateObject("EXCEL.APPLICATION") Set objWorkBook = objExcel.Workbooks.open ("C:\arq3.xlsx") Set sheet = objWorkBook.Sheets ("Planilha1") sheet.Cells(1,1) = "Nome1" ** Script para deletar planilha do arquivo** Dim objExcel,objWorkBook Set objExcel = CreateObject("EXCEL.APPLICATION") Set objWorkBook = objExcel.Workbooks.open ("C:\arq3.xlsx") objWorkBook.Sheets("Planilha1").delete ** Script para deletar o arquivo excel** Set obj = CreateObject("Scripting.FileSystemObject") obj.DeleteFile("C:\arq3.xlsx")
Seguindo o exemplo acima, você conseguirá manipular arquivos Excel através dos softwares da Elipse (Elipse E3 e Elipse Power).
NOTA: A fim de executar aplicativos do Office (Excel e outros) na conta do Sistema (SYSTEM), e rodar este script em objetos do servidor, deve-se criar uma pasta chamada Desktop nos seguintes diretórios:
C:\Windows\system32\config\systemprofile\
C:\Windows\SysWOW64\config\systemprofile\
A aplicação exemplo anexada a este artigo foi desenvolvida no Elipse E3 versão 5.1 build 186.