Clique abaixo para nos ajudar
Login

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
13 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 13 Visitantes :: 1 Motor de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Últimos assuntos
» Ajuda a direcionar
Hoje à(s) 01:17 por miiiih

» Alterar uma palavra num arquivo de texto
5/12/2016, 12:02 por Teseu

» Buscar endereço por CEP
3/12/2016, 19:59 por pedrossian

» USAR WEBSERVICE NO VFP9
2/12/2016, 09:50 por AJC

» BANIMENTO DE USUARIO
17/11/2016, 08:31 por FAF

» Impressora Ticket
15/11/2016, 09:20 por clima238

» Gráfico
9/11/2016, 10:43 por hidroluz

» TRANSPOR TABELA
9/11/2016, 10:34 por hidroluz

» MUDANÇA DO .DBF PARA POTSGREE
9/11/2016, 09:12 por AJC

» Website com videoaulas sobre linguagens de programação
8/11/2016, 09:56 por JLDR

» Parceria para desenvolvimento de template em Wordpress
7/11/2016, 19:15 por mindix

» Data fica invertida na planilha que é gerada via programa.
27/10/2016, 11:00 por Linghston

» Maximizar report direto do menu
21/10/2016, 20:48 por Rosangela Pires

» Fechar form com tempo
21/10/2016, 10:15 por Rosangela Pires

» URGENTE: Ajuda com impressora ELGIN-L42
14/10/2016, 09:53 por megasoft

» Opções para gerar NF-e
10/10/2016, 09:07 por mavsinfo

» Google Maps
8/10/2016, 15:08 por Rosangela Pires

» Mysql
5/10/2016, 11:22 por Marcos Guedes

» Acessando Banco em MYSQL de um projeto WORDPRESS
3/10/2016, 10:58 por Marcos Guedes

» OPTION SELECT MOSTRAR CAMPOS QUASE PRONTO
26/9/2016, 21:09 por BobKuspe

Alterar uma palavra num arquivo de texto

5/12/2016, 12:02 por Teseu

Olá prezados colegas de programação!

Este é eu primeiro post no fórum e gostaria de poder …

Comentários: 0

Buscar endereço por CEP

3/12/2016, 19:59 por pedrossian

Caros amigos, meu código para buscar endereço pelo CEP não funciona mais.
Alguém pode me …

Comentários: 0

USAR WEBSERVICE NO VFP9

2/12/2016, 09:50 por AJC

Pessoal, preciso de um material ou livro que me traga instruções como
usar a consumação de …

Comentários: 0

BANIMENTO DE USUARIO

13/11/2016, 16:21 por FAF

A usuária ROSANGELA PIRES ao tentar acessar o Forum obtem sempre a mensagem de BANIMENTO.
A mesma …

Comentários: 3

Impressora Ticket

15/11/2016, 09:20 por clima238

Bom dia,
Por favor alguém me explique porque o código abaixo imprime no ecrã em vez do printer: …

Comentários: 0

Estatísticas
Temos 6963 usuários registrados
O último usuário registrado atende pelo nome de miiiih

Os nossos membros postaram um total de 17119 mensagens em 2577 assuntos

excel macro com fox

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido excel macro com fox

Mensagem por edspicer em 29/6/2010, 17:14

Boa tarde amigos,

alguem tem algum exemplo de macro no excel que gera grafico?
(isso via fox)

Qualquer ajuda será muito bem-vinda.

abraços

edspicer
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por hugo em 29/6/2010, 20:42

edspicer

seguinte

muito tempo atras fiz assim

criei uma planilha no excel
dai fiz outra vinculada a primeira, sendo que esta segunda
busca os dados da primeira

no fox pro levantei os dados, gravei em dbf ( se nao me engano )
ou gerei xls mesmo ( tipo padrao, c:\teste.xls ) dpois no fox mandava
o excel abrir a segunda planilha ( c:\grafteste.xls )

como a grafteste pega os dados da teste.xls e quando mandei gerar
pelo fox atualizei a texte.xls ( ou dbf ) nao me lembro exatamente,
a impressao para o usuario era

clica num botao e abria o excel com o grafico!

claro que isto fiz com foxpro Dos e no visual deve-se ter mais recursos

espero que ajude em algo!

valeu
dei o comando para o fox mandar o excel abrir este

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - [Você precisa estar registrado e conectado para ver este link.]

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por mfelis em 30/6/2010, 09:17

Cara.criei uma classe em foxpro para manipulação do excel.Te Ajuda?
Link: [Você precisa estar registrado e conectado para ver este link.]

Espero que Ajude

mfelis
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por edspicer em 30/6/2010, 11:09

Hugo,

valeu pela ajuda.
a gente faz mais ou menos isso, mas a gente tem um modelo e quando geramos os dados nos copiamos primeiro o modelo depois jogamos os dados que estao em um cursor, so falta o grafico.
valeu, ja me deu algumas ideias.
mfelis, vou verificar e fazer os testes aqui, eu ja te falo.
grato.

edspicer
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por mfelis em 30/6/2010, 11:23

[Você precisa estar registrado e conectado para ver este link.] escreveu:Hugo,

valeu pela ajuda.
a gente faz mais ou menos isso, mas a gente tem um modelo e quando geramos os dados nos copiamos primeiro o modelo depois jogamos os dados que estao em um cursor, so falta o grafico.
valeu, ja me deu algumas ideias.
mfelis, vou verificar e fazer os testes aqui, eu ja te falo.
grato.

Dúvidas é só postar!

mfelis
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por Marcos Guedes em 30/6/2010, 11:30

[Você precisa estar registrado e conectado para ver este link.] escreveu:Boa tarde amigos,

alguem tem algum exemplo de macro no excel que gera grafico?
(isso via fox)

Qualquer ajuda será muito bem-vinda.

abraços
Veja se lhe ajuda:
Código:
***THIS IS A HEAVILY MODIFIED VERSION OF A MSDN-SUPPLIED PROGRAM

#include graph9.h
#include excel9.h
#DEFINE False .F.
#DEFINE True .T.

PARAMETER lnPaperOrientation

lnPaperOrientation = ;
IIF(TYPE("lnPaperOrientation") = "L", 1, lnPaperOrientation)

*!* The following code sets the paper size and orientation variables based *!*
*!* on the lnPaperOrientation value *!*
DO CASE

CASE lnPaperOrientation = 2
lnPaperSize = 1
lnPrintOrientation = 2

CASE lnPaperOrientation = 3
lnPaperSize = 5
lnPrintOrientation = 1

CASE lnPaperOrientation = 4
lnPaperSize = 5
lnPrintOrientation = 2

OTHERWISE

lnPaperSize = 1
lnPrintOrientation = 1

ENDCASE

***MAKE SURE A TABLE IS OPEN
lcTableAlias = ALIAS()
IF EMPTY(lcTableAlias)
=MESSAGEBOX("A table must be open in the currently selected work area" + ;
CHR(13) + "in order for this program to work.")
RETURN
ENDIF


***DONT OVERWRITE THE EXCEL FILE UNLESS PROMPTED!
lcTablePath = LEFT(DBF(), RAT("", DBF()))
lcExcelFile = lcTablePath + lcTableAlias + ".xls"
IF FILE(lcExcelFile)
lcMessageText = "An Excel file by the name of " + lcTableAlias + ;
".xls" + CHR(13) + "already exists at location:" + CHR(13) + ;
lcTablePath + CHR(13) + ;
"Do you want to delete it now and replace it?"
lnDialogType = 4 + 32 + 256
lnFirstWarning = MESSAGEBOX(lcMessageText, lnDialogType)
IF lnFirstWarning = 6 && User responds with a "Yes"
lcMessageText = "This will delete the exist file:" + CHR(13) + ;
lcExcelFile + CHR(13) + ;
"Are you certain?"
lnDialogType = 4 + 48 + 256
lnSecondWarning = MESSAGEBOX(lcMessageText, lnDialogType)
IF lnSecondWarning = 6 && User responds with a "Yes"
ERASE (lcExcelFile) && Erase the existing file
ELSE
RETURN
ENDIF
ELSE
RETURN
ENDIF
ENDIF


*!* The following code determines the selected range of the print area for *!*
*!* the derived Excel file. This is based on the number of fields in the *!*
*!* source table (columns) and the number of records in the source table *!*
*!* (rows). A range of three rows is added to the number of records. This *!*
*!* allows for the following: *!*
*!* One row is added by the COPY TO process to hold the names of the fields. *!*
*!* One row is inserted as a spacer between the field names and the first *!*
*!* row of data. *!*
*!* One row is added to the bottom to contain a SUM function for numeric, *!*
*!* integer, and/or currency data. *!*
lcTotalRangeExpr = ;
["A1:] + ColumnLetter(FCOUNT()) + ALLTRIM(STR(RECCOUNT() + 3)) + ["]
lcTotalPrintArea = ;
["$A$1:$] + ColumnLetter(FCOUNT()) + [$]+ALLTRIM(STR(RECCOUNT() + 3)) + ["]

*!* The following code will erase any previously created temporary excel *!*
*!* file created by this program *!*
ERASE HOME() + "VFP_to_Excel.xls"

*!* The following code creates the temporary Excel file that will be used *!*
*!* for the derived Excel file *!*
COPY TO HOME() + "VFP_to_Excel" TYPE XL5

*!* The following code commences the OLE Automation process. *!*
oExcelObject = CREATEOBJECT('Excel.Application')

*!* The following code opens the "VFP_to_Excel" file that was created by the *!*
*!* "COPY TO" command *!*
oExcelWorkbook = ;
oExcelObject.Application.Workbooks.Open(HOME() + "VFP_to_Excel")

*!* The following code activates the Worksheet which contains the "COPY TO" *!*
*!* data *!*
oActiveExcelSheet = oExcelWorkbook.Worksheets("VFP_to_Excel").Activate

*!* The following code establishes an Object Reference to the "VFP_to_Excel" *!*
*!* worksheet *!*
oExcelSheet = oExcelWorkbook.Worksheets("VFP_to_Excel")

WAIT WINDOW "Developing Microsoft Excel File..." + CHR(13) + "" + CHR(13) + ;
"Passing formatting information to Excel." + CHR(13) + "" NOWAIT

*!* The following code selects row 2 and then inserts a row that will serve *!*
*!* as a spacer between the field names and the first row of data. *!*
oExcelSheet.Rows("2:2").Select
oExcelSheet.Rows("2:2").Insert

*!* The following code sets font attributes of row 1 (the field names). *!*
oExcelSheet.Rows("1:1").Font.Name = "Arial"
oExcelSheet.Rows("1:1").Font.FontStyle = "Bold"
oExcelSheet.Rows("1:1").Font.Size = 8

*!* The following code creates an array using the AFIELDS() Function. This *!*
*!* array will provide information pertaining to the data type, width, and *!*
*!* number of decimal places for each field of the source table. *!*
lnFields = AFIELDS(laFields)

*!* The following code in the FOR loop will be processed for each field in *!*
*!* the source table. *!*
FOR iField1 = 1 TO lnFields

*!* The following line of code uses a Procedure (ColumnLetter) that is *!*
*!* contained in this program. This procedure will return a *!*
*!* corresponding Excel Column (letter) reference that must be used in *!*
*!* passing any cell or column specific formatting or information to *!*
*!* Excel. *!*
lcColumn = ColumnLetter(iField1)

*!* The following code creates strings of information in a format *!*
*!* required by Excel for the processing of commands that are specific to *!*
*!* rows, columns, and/or cells. For example, in order to SELECT a range *!*
*!* of cells from the third field of a 62 record table, you must bear the *!*
*!* following in mind: *!*
*!* 1. The top 2 rows consist of the field names and then a spacer row *!*
*!* between that and the top data. *!*
*!* 2. On account of the above, the data will start at row 3 and end at *!*
*!* row 62 + 2. *!*
*!* 3. Also on account of the above, any added numeric calculation must *!*
*!* be contained at row 62 + 3. *!*
*!* So, in order to pass the cell to contain a calculation for column 3, *!*
*!* you must pass (with the quotes) "C65" The range of cells for the *!*
*!* calculation must be passed (with the quotes) as "C3:C64" Lastly, the *!*
*!* string to pass to Select column 3 (with the quotes) as "C:C" *!*
*!* Therefore, this program builds these strings out and stores them to *!*
*!* variables for Macro Substitution so that the literal string contains *!*
*!* quotes for passing the information to Excel. *!*
lcCellForCalcuation = ;
["] + lcColumn + ALLTRIM(STR(RECCOUNT() + 3)) + ["]
lcCalculationRange = ;
lcColumn + [3:] + lcColumn + ALLTRIM(STR(RECCOUNT() + 2))
lcColumnExpression = ;
["] + lcColumn + [:] + lcColumn + ["]
oExcelSheet.Columns(&lcColumnExpression.).Select

*!* The following code checks for the data type of the source Visual *!*
*!* FoxPro table by referencing the array created earlier in the program. *!*
*!* Depending upon the data type, a literal format expression is built to *!*
*!* contain quotes and is later passed to Excel by Macro Substituted *!*
*!* reference (i.e. an ampersand [&] followed by a period [.] terminator).*!*
DO CASE

CASE (laFields(iField1,2)$"C.L") && Is the field data type Character *!*
*!* or Logical *!*
lcFmtExp = ["@"] && Pass Character formatting *!*

CASE (laFields(iField1,2)$"N.I.Y")&& Is the field data type Numeric, *!*
*!* Integer, or Currency *!*
IF (laFields(iField1,2)$"Y") && If it is Currency *!*
lcFmtExp = ["$#,##0.00"] && Pass Currency Formatting *!*
*!* with a comma separator *!*
ELSE && If it is other than Currency *!*
IF laFields(iField1,4) = 0 && If the Decimal Width is *!*
*!* zero *!*
lcFmtExp = ["0"] && Pass Numeric formatting *!*
*!* with no decimals *!*
ELSE && Otherwise *!*
*!* Build a format string containing the appropriate number *!*
*!* of decimals *!*
lcFmtExp = ["0.] + REPLICATE("0", laFields(iField1,4)) + ["]
ENDIF
ENDIF

CASE (laFields(iField1,2)$"D.T") && Is the field data type Date or *!*
*!* DateTime *!*
lcFmtExp = ["mm/dd/yy"] && Pass Date formatting *!*

ENDCASE

*!* The following code passes the derived format expression to Excel *!*
oExcelSheet.Columns(&lcColumnExpression.).NumberFormat = &lcFmtExp.

*!* If the field data type is Numeric, Integer, or Currency, will add a *!*
*!* calculation to the cell immediately below the last row containing *!*
*!* data. *!*
IF (laFields(iField1,2)$"N.I.Y") && Is the field data type Numeric, *!*
*!* Integer, or Currency *!*
oExcelSheet.Range(&lcCellForCalcuation.).Value = ;
[=SUM(&lcCalculationRange.)]
IF (laFields(iField1,2)$"N.I") && Is the field data type *!*
*!* Numeric or Integer *!*
oExcelSheet.Range(&lcCellForCalcuation.).Select

*!* The following code will format the cell containing the *!*
*!* calculation to have a comma separator. This process was *!*
*!* already done for any event where the field data type was *!*
*!* currency. *!*
lcCalculationFormat = ["#,##0] + IIF(laFields(iField1,4) > 0, [.] +;
REPLICATE("0", laFields(iField1,4)), []) + ["]
oExcelSheet.Range(&lcCellForCalcuation.).NumberFormat = ;
&lcCalculationFormat.
ENDIF
ENDIF

ENDFOR

***NOW I CAN INSERT THE DATA
WAIT WINDOW "Developing Excel File Report" + CHR(13) + "" + CHR(13) +;
"setting print area and final formatting" NOWAIT
oExcelSheet.Cells.Select
oExcelSheet.Cells.EntireColumn.AutoFit
oExcelSheet.Range(&lcTotalRangeExpr.).Select
***END ADDED CODE

*!* IMPORTANT NOTE - POSSIBILITY OF PAGE SETUP OBJECT UNAVAILABLE ERRORS IF *!*
*!* THIS PROGRAM IS RUN ON A MACHINE WITH NO REGISTERED *!*
*!* PRINTER DEVICE. *!*
***THIS HAS ALSO BEEN EDITED, BUT IT STILL CAUSES ERRORS. IF IGNORED,
***THE PROGRAM COMPLETES PROPERLY.
WITH oExcelSheet.PageSetup

*!* This area sets to Title Rows of the spreadsheet that will be printed *!*
*!* on each page. Since this example contains the table field names on *!*
*!* the top row, and then an empty row of cells that was inserted by this *!*
*!* program, then we will set row 1 through row 2 as the title rows. *!*
.PrintTitleRows = "$1:$2"
*!* Setting Title Columns would work in similar fashion to Setting Title *!*
*!* Rows. Here, however, the column letter would be used in syntax *!*
*!* similar to the above example. Here, however, a null string is *!*
*!* passed. This example simply shows that the option is available. *!*
.PrintTitleColumns = ""
.PrintArea = &lcTotalPrintArea.
.LeftHeader = lcExcelFile

.CenterHeader = ""
.RightHeader = ""
*!* The below referenced "cStamp" is a procedure contained in this *!*
*!* program. It builds out a string which contains the computer system *!*
*!* date and time on which the resulting Excel file was created. *!*
.LeftFooter = cStamp()

.RightFooter = "Page &P of &N"

.CenterHorizontally = .T.
.CenterVertically = .F.

.Orientation = lnPrintOrientation

.Papersize = lnPaperSize

.Zoom = .F.
.FitToPagesWide = 1
.FitToPagesTall = 99
ENDWITH

***LETS TRY TO PLOT THE POINTS HERE: INSERTED CODE ---PROBLEM IS HERE

WITH oExcel
.Sheet.Range("A1:B200").Select
.Workbook.Charts.Add
.Workbook.ActiveChart.ChartType = xlXYScatter
.Workbook.ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("A1:B200"),PlotBy:=xlColumns

.Workbook.ActiveChart.SeriesCollection(1).Name = "=Sheet1!R18C1"
.Workbook.ActiveChart.Location Where:=xlLocationAsNewSheet

WITH .Workbook.ActiveChart
.HasTitle = True
.CharsTitle.Characters.Text = m.generic_num
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "X"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Y"
ENDWITH
WITH .Workbook.ActveChart
.HasAxis(xlCategory, xlPrimary) = True
.HasAxis(xlValue, xlPrimary) = True
ENDWITH
.Workbook.ActiveChart.Axes(xlCategory, xlPrimary).CategoryType = xlAutomatic
.Workbook.ActiveChart.Axes(xlValue).MajorGridlines.Select
.Workbook.ActiveChart.PlotArea.Select
WITH .Selection.Border
.ColorIndex = 16
.Weight = xlThin
.LineStyle = xlContinuous
ENDWITH
WITH .Selection.Interior
.ColorIndex = 2
.PatternColorIndex = 1
.Pattern = xlSolid
ENDWITH
.Workbook.ActiveChart.ChartArea.Select
.Workbook.ActiveChart.SeriesCollection(1).Select
.Workbook.ActiveChart.SeriesCollection(1).ApplyDataLabels Type:=xlDataLabelsShowValue,AutoText:=True,LegendKey:=False

.Workbook.ActiveChart.PlotArea.Select
.Visible = .T.
ENDWITH
***END INSERTED CODE HERE

*oExcelSheet.Range("A1").Select

*!* The following code saves the derived Excel file to its assigned name and *!*
*!* location *!*
oExcelWorkbook.SaveAs(lcExcelFile)

=MESSAGEBOX("Your Excel File is Ready!",64)

***OPEN THE EXCEL FILE!
oExcelObject.Visible = .T.

*!****************************************************************************!*
*!* End of program VFPExcel.prg *!*
*!****************************************************************************!*

***EVERYTHING BELOW HERE IS MSDN SUPPLIED
*!****************************************************************************!*
*!* Beginning of PROCEDURE ColumnLetter *!*
*!* This procedure derives a letter reference based on a numeric value. It *!*
*!* uses the basis of the ASCII Value of the upper case letters A to Z (65 *!*
*!* through 90) to return the proper letter (or letter combination) for a *!*
*!* provided numeric value. *!*
*!****************************************************************************!*

PROCEDURE ColumnLetter

PARAMETER lnColumnNumber

lnFirstValue = INT(lnColumnNumber/27)
lcFirstLetter = IIF(lnFirstValue=0,"",CHR(64+lnFirstValue))
lcSecondLetter = CHR(64+MOD(lnColumnNumber,26))

RETURN lcFirstLetter + lcSecondLetter

*!****************************************************************************!*
*!* End of procedure ColumnLetter *!*
*!****************************************************************************!*


*!****************************************************************************!*
*!* Beginning of PROCEDURE cStamp *!*
*!* This procedure derives a text representation of the system date and time *!*
*!* in the form of: *!*
*!* 01/01/2000 11:59:00 would be rendered as: *!*
*!* Saturday, January 1, 2000 @ 11:59 am *!*
*!****************************************************************************!*

PROCEDURE cStamp

cDTString1 = CDOW(DATE()) + ", "
cDTString2 = CMONTH(DATE()) + " "
cDTString3 = ALLTRIM(STR(DAY(DATE()))) + ", "
cDTString4 = ALLTRIM(STR(YEAR(DATE()))) + " @ "
cDTString5 = IIF(VAL(LEFT(TIME(), 2)) > 12, ;
ALLTRIM(STR(VAL(LEFT(TIME(), 2)) - 12)) +;
SUBSTR(TIME(), 3, 3), LEFT(TIME(), 5))
cDTString6 = IIF(VAL(LEFT(TIME(),2))=>12,"pm","am")
cDTString = "Created on " + cDTString1 + ;
cDTString2 + cDTString3 + cDTString4 + cDTString5 + cDTString6

RETURN cDTString

*!****************************************************************************!*
*!* End of procedure cStamp *!*
*!****************************************************************************!*

Fonte:
www .foxite.com/archives/argh-running-an-excel-macro-from-foxpro-0000012445.htm

Leia também este conteúdo:
[Você precisa estar registrado e conectado para ver este link.]

Resolve?

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por edspicer em 8/7/2010, 17:45

Marcos,

perdoe a minha ignorancia, ainda sou novato, mas esse codigo ai eu posso jogar em um unico prg?

edspicer
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por Marcos Guedes em 8/7/2010, 23:44

edspicer, você basta colocar num PRG, mas observe que existe um parâmetro referente a orientação do papel.

Acredito que se você atribuir o valor 1 a rotina prossegue.
Mas não cheguei a testar pois nunca precisarei trabalhar com macros do excel utilizando vfp. Mas acabei achando esta dica e postando para você.

Tenta fazer uns testes em cima disso e veja se chegas a uma solução.
Qualquer dúvida é só postar.

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por edspicer em 13/7/2010, 10:07

Marcos, eu vou dar uma estudada no prg.
acho que vou te incomodar um pouco quando tiver duvidas.


Obrigado pela ajuda. Very Happy

edspicer
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por Marcos Guedes em 13/7/2010, 10:13

Precisando é só postar.
Tenho minhas limitações, mas sei que muitos colegas aqui tem
capacidade de ajudar solucionar o problema.
Smile

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por edspicer em 15/7/2010, 17:25

que tipo de valor a variavel xlColumns guardaria?

edspicer
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por edspicer em 15/7/2010, 17:48

Marcos, outra coisa:
notei que ele tem um arquivo de cabecalho - #include graph9.h

onde consigo este arquivo?

edspicer
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por edspicer em 21/7/2010, 16:03

Pessoal, consegui resolver o meu problema.
após gerar o relatorio em excel, executo via macro os comandos para adicionar o grafico que pega do relatorio gerado e monta o grafico.

se alguem se interessar, abaixo fica o codigo para adicionar o gráfico:

Código:
.ActiveSheet.Shapes.AddChart.Select
.ActiveChart.ChartType = 65 && Gráfico de Linhas (Ver arquivo Excel9.h)
.ActiveChart.SetSourceData(.Range("D9:P9;D12:P12")) && Seleção do intervalo de Dados
.ActiveChart.SeriesCollection(1).Name = "=Plan2!$B$12" && Legenda do título do gráfico
.ActiveSheet.ChartObjects("Gráfico 2").Activate
       *** Posições e tamanhos do gráfico
       .Selection.Left = 1
       .Selection.Top = 175
       .Selection.Height = 350
       .Selection.Width = 1320
      ** Retira a legenda que fica no canto direito do gráfico (somente o título basta)
       .ActiveChart.Legend.Select
       .Selection.Delete


e valeu pela ajuda.

edspicer
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por Marcos Guedes em 21/7/2010, 16:12

Parabéns por ter solucionado, edspicer!
E obrigado por compartilhar.


Reputado!
Very Happy

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por hugo em 21/7/2010, 19:23

parabens edi

reputado

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - [Você precisa estar registrado e conectado para ver este link.]

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: excel macro com fox

Mensagem por Conteúdo patrocinado Hoje à(s) 19:00


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum