Boa Tarde Alguém teria um programa de exemplo que gera somente um Gráfico (Colunas) no excel? Grato Willians Ambrósio
Seguem alguns códigos, veja se te ajuda: Código: Para aparecer um título específico na barra de títulos em vez de Pasta1 ou Pasta2 ch-Excel:Sheets:item(1l):name = "Titulo da Pasta1". GRÁFICO NO EXCEL Numeração dos gráficos.... 1 Area Empilhada 2D 2 Barras Agrupadas 2D 3 Colunas Agrupadas 2D 4 Linha com marcadores 5 Pizza 2D 6 Rosca 7 Radar com Marcadores 8 Dispersão com pontos conectados 9 Area 3D 10 Barras Agrupadas 3D 11 Colunas 3D 12 Linhas 3D 13 Piza 3D 14 Superficie 3D DEFINE VARIABLE chExcelApplication AS COM-HANDLE. DEFINE VARIABLE chWorkbook AS COM-HANDLE. DEFINE VARIABLE chWorksheet AS COM-HANDLE. DEFINE VARIABLE chChart AS COM-HANDLE. DEFINE VARIABLE chWorksheetRange AS COM-HANDLE. DEFINE VARIABLE iColumn AS INTEGER INITIAL 1. DEFINE VARIABLE cColumn AS CHARACTER. DEFINE VARIABLE cRange AS CHARACTER. /* Cria a Nova Aplicacao Excel object */ CREATE "Excel.Application" chExcelApplication. /* Abri o Excel Visualizando os Dados */ chExcelApplication:Visible = TRUE. /* Cria o arquivo */ chWorkbook = chExcelApplication:Workbooks:Add(). /* Ativa o Arquivo */ chWorkSheet = chExcelApplication:Sheets:Item(1). /* Label das Colunas a ser preenchida pelo arquivo */ chWorkSheet:Columns("A"):ColumnWidth = 10. chWorkSheet:Columns("B"):ColumnWidth = 10. chWorkSheet:Columns("C"):ColumnWidth = 12. chWorkSheet:Range("A1:C1"):Font:Bold = TRUE. chWorkSheet:Range("A1"):Value = "DATA". chWorkSheet:Range("B1"):Value = "VALOR FAT.". chWorkSheet:Range("C1"):Value = "VALOR PED". /* Dados do Arquivo */ DEFINE TEMP-TABLE work FIELD w-data AS DATE FIELD w-val AS DEC FORMAT ">>>,>>>,>>9.99" FIELD w-valp AS DEC FORMAT ">>>,>>>,>>9.99". DEFINE VARIABLE n AS INTEGER. FOR EACH nota-fiscal WHERE nota-fiscal.dt-emis-nota >= 04/01/2006 AND nota-fiscal.dt-emis-nota <= 04/10/2006 AND nota-fiscal.dt-cancela = ? AND nota-fiscal.emite-duplic = YES. FIND FIRST WORK WHERE WORK.W-data = nota-fiscal.dt-emis-nota NO-ERROR. IF NOT AVAIL WORK THEN DO: CREATE work. ASSIGN work.w-data = nota-fiscal.dt-emis-nota work.w-val = nota-fiscal.vl-tot-nota. END. ELSE DO: ASSIGN work.w-val = nota-fiscal.vl-tot-nota + work.w-val. END. END. FOR EACH ped-venda WHERE ped-venda.dt-entrega >= 04/01/2006 AND ped-venda.dt-entrega <= 04/10/2006 AND ped-venda.cod-sit-ped <> 9 NO-LOCK. FOR EACH ped-item OF ped-venda no-lock: FIND FIRST WORK WHERE WORK.W-data = ped-item.dt-entrega NO-ERROR. IF NOT AVAIL WORK THEN DO: CREATE work. ASSIGN work.w-data = ped-item.dt-entrega work.w-valp = ped-item.vl-tot-it. END. ELSE DO: ASSIGN work.w-valp = ped-item.vl-tot-it + work.w-val. END. END. END. FOR EACH work. iColumn = iColumn + 1. cColumn = STRING(iColumn). cRange = "A" + cColumn. chWorkSheet:Range(cRange):Value = work.w-data. cRange = "B" + cColumn. chWorkSheet:Range(cRange):Value = work.w-val. cRange = "C" + cColumn. chWorkSheet:Range(cRange):Value = work.w-valP. END. chWorkSheet:Range("B2:C10"):Select(). /*chExcelApplication:Selection:Style = "Currency". */ /* Cria os labels *e abre a tabela */ chWorksheetRange = chWorksheet:Range("A1:C31"). chWorksheet:ChartObjects:Add(50,150,400,300):Activate. chExcelApplication:ActiveChart:ChartWizard(chWorksheetRange, 3, 1, 2, 1, 1, TRUE, " ", "DATAS DE FATURAMENTO", "VALOR"). /* Cabeçalho */ chChart=chExcelApplication:Charts:Add(). chChart:Name = "ABA A". chChart:Type = 11. /* Aqui muda o tipo do grafico */ /* Apaga da memoria */ RELEASE OBJECT chExcelApplication. RELEASE OBJECT chWorkbook. RELEASE OBJECT chWorksheet. RELEASE OBJECT chChart. RELEASE OBJECT chWorksheetRange. Mostrar valores de gráficos no excel &SCOPED-DEFINE xlPie 5 &SCOPED-DEFINE xlLocationAsNewSheet 2 /* COM Handle Definitions */ define variable ExcelApplication as com-handle. define variable ExcelWorkBook as com-handle. define variable ExcelWorkSheet as com-handle. define variable ExcelChart as com-handle. define variable ExcelWorkSheetRange as com-handle. define variable VinExcelRow as integer no-undo. CREATE "Excel.Application" ExcelApplication. ExcelApplication:Visible = true. ExcelWorkBook = ExcelApplication:WorkBooks:Add(). ExcelWorkSheet = ExcelApplication:Sheets:Item(1). ExcelWorkSheet:Columns("A"):ColumnWidth = 7. ExcelWorkSheet:Columns("B"):ColumnWidth = 14. ExcelWorkSheet:Columns("C"):ColumnWidth = 25. ExcelWorkSheet:Columns("D"):ColumnWidth = 10. ExcelWorkSheet:Range("A1"):Value = "REASON ID#". ExcelWorkSheet:Range("B1"):Value = "CATEGORY". ExcelWorkSheet:Range("C1"):Value = "DESCRIPTION". ExcelWorkSheet:Range("D1"):Value = "TOTALS". do VinExcelRow = 2 to 20: ExcelWorkSheet:Range("A" + String(VinExcelRow)):Value = VinExcelRow. ExcelWorkSheet:Range("B" + String(VinExcelRow)):Value = (VinExcelRow * 2). end. /* Creating embedded chart */ ExcelWorkSheet:range("B2:" + "B" + String(VinExcelRow)):select. ExcelChart = ExcelApplication:Charts:Add(). ExcelChart:Activate(). ExcelChart:name = "Teste". ExcelChart:Type = {&xlPie}. /* Setting the source of date to make chart with */ ExcelChart:SetSourceData(ExcelWorkSheet:Range("B2:" + "B" + String(VinExcelRow))). /*************************************************** **********/ ExcelWorkSheet = ExcelApplication:Sheets:Item(2). ExcelWorkSheet:visible = false. ExcelWorkSheet = ExcelApplication:Sheets:Item(3). ExcelWorkSheet:visible = false. ExcelWorkSheet = ExcelApplication:Sheets:Item(4). ExcelWorkSheet:visible = false. /************************************************************ */ /******** P R O T E G E N D O A S P A S T A S **********/ ExcelWorkBook:Protect("senha":U, true, true). /************************************************************ */ ExcelApplication:DisplayAlerts = false. ExcelWorkBook:SaveAs("c:\work\progress\rotinas\excel-graph.xls",{&xlWorkbookNormal},"","",NO,NO,{&xlShared},{&xlUs erResolution}). /* Release COM HANDLES */ release object ExcelApplication no-error. release object ExcelWorkBook no-error. release object ExcelWorkSheet no-error. release object ExcelChart no-error. release object ExcelWorkSheetRange no-error.