[RESOLVIDO] Jogar dados para excel ja criado ??

Discussão em 'EMS , HCM e Totvs 11' iniciado por muertebr, Outubro 20, 2009.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. muertebr

    muertebr Membro Participativo

    Existe alguma forma de jogar dados do progress para uma planilha de excel ja criada...
    como é feito com o word através de campos de formulário texto??

    Sei que existe dessa forma... mais teria que ser em forma de for each para lançar os dados para a planilha

    se alguem souber ;)

    Código:
    define variable chExcelApplication as com-handle.
    define variable chWorkBook            as com-handle.
    define variable chWorkSheet           as com-handle.
    define variable chWorksheetRange  as com-handle.
    
    create "Excel.Application" chExcelApplication.
    chWorkbook = chExcelApplication:Workbooks:open("C:\DESENV\Eriuton\teste.XLS").
    
    ASSIGN chWorkSheet                         = chExcelApplication:Sheets:ITEM(1).
    
    chWorkSheet:Cells:Replace("#A","TESTE").
    
    
    chExcelApplication:visible = true.
    
    release object chExcelApplication.     
    release object chWorkbook.
    release object chWorksheet.
  2. michel

    michel Membro Participativo

    DEF VAR excelappl AS COM-HANDLE NO-UNDO.
    DEF VAR ChWorkSheet AS COM-HANDLE NO-UNDO.
    CREATE "excel.application" excelappl.

    excelappl:workbooks:ADD("\\server10\datasul\espec\doc\indicadores.xls").
    excelappl:worksheets:ITEM(1):SELECT.
    excelappl:VISIBLE = FALSE.

    DEF VAR LINHA AS INT NO-UNDO.
    DEF VAR TEXTO AS CARACTER NO-UNDO.

    ASSIGN LINHA = 1.

    ASSIGN TEXTO = "informacao da consulta do ems".

    RUN GRAVADADOSEXCEL.
    ASSIGN LINHA = LINHA + 1.
    END.

    /* GERA OS DADOS NA PLANILHA DO EXCEL */
    PROCEDURE GRAVADADOSEXCEL:
    excelappl:range("C26"):VALUE = "=sum(((N9/N5)*1000000))". /* EXEMPLO GERANDO UMA FORMULA */
    excelappl:range("A" + string(LINHA) ):VALUE = "OLA AMIGO". /* EXEMPLO GERANDO UM TEXTO */
    excelappl:range("B" + string(LINHA) ):VALUE = TEXTO. /* EXEMPLO GERANDO A SEQUENCIA DE ORDENS DE PRODUÇÃO DO EMS204 */
    END PROCEDURE.

    excelappl:VISIBLE = TRUE.
    RELEASE OBJECT excelappl NO-ERROR.
    RELEASE OBJECT chWorksheet NO-ERROR.
  3. michel

    michel Membro Participativo

    Troque \\server10\datasul\espec\doc\indicadores.xls por uma planilha qualquer do excel ate mesmo vazia, so lembre de colocar ela no propath para o progress achar
  4. muertebr

    muertebr Membro Participativo

    Código:
    define variable chExcelApplication as com-handle.
    define variable chWorkBook            as com-handle.
    define variable chWorkSheet           as com-handle.
    define variable chWorksheetRange  as com-handle.
    define variable j as integer   no-undo.
    define variable c-descricao like cod-rejeicao.descricao.
    
    define variable m-linha as integer   no-undo.
    ASSIGN m-linha = 3.
    create "Excel.Application" chExcelApplication.
    chWorkbook = chExcelApplication:Workbooks:open("Q:\ems2\_custom\Especifico\atcp001.xls").
    
    ASSIGN chWorkSheet = chExcelApplication:Sheets:ITEM(5).
    
    for each movto-estoq .........
       ASSIGN chworksheet:range("B" + STRING(m-linha)):VALUE = year(movto-estoq.dt-trans)
    end.
    
    chWorksheet:Saveas("c:\work\atcp001" + string(DAY(TODAY)) + string(MONTH(TODAY)) + STRING(MTIME)).
    chExcelApplication:visible = true.
    
    release object chExcelApplication.     
    release object chWorkbook.
    release object chWorksheet.
    

    Agora quem poderá me ajudar??

    Como que faço pra inseri um comentário numa célula através do progress??
    Criando a planilha....
  5. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Bom dia,

    Segue abaixo o código a ser implementado para inserir comentários nas células:

    Código:
    chworksheet:range("D" + STRING(m-linha)):AddComment().
    ASSIGN chworksheet:range("D" + STRING(m-linha)):COMMENT:VISIBLE = "FALSE".
    chworksheet:range("D" + STRING(m-linha)):COMMENT:TEXT("Cleilton:" + Chr(10) + "GRAVANDO COMENTÁRIO").
    []'s
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página