Delphi Excel (OLE)

Delphi

11/01/2005

Pessoal,

Consegui fazer a exportação de alguns dados do meu aplicativo para o Excel. Bom... Tive que utilizar OLE para fazer esta exportação, pois precisava formatar algumas células... O problema é que eu não estou conseguindo atribuir uma fórmula a uma célula no Excel...

Alguém tem alguma dica?

Segue um trecho do código que utilizei:

  Excel := CreateOleObject(´Excel.Application´);
  Excel.WorkBooks.Open(NomeArquivo);
  Excel.Visible := false;
  ...
  FWorkSheet.Range[Celula1, Celula2].Value2 := Valor;


Já tentei atribui o valor diretamente para a célula, mas não funcionou...


Michaell

Michaell

Curtidas 0

Respostas

Lucas Silva

Lucas Silva

11/01/2005

Grave macros no excel e depois vai em editor de Visual Basic.
E olhe o código destas macros...
Depois é só colocar um [b:5bb1f5580d]excel.[/b:5bb1f5580d] antes dos comandos no delphi, que funciona blz....
Qualquer dúvida, posta ai..
T+,
Lucas!


GOSTEI 0
Michaell

Michaell

11/01/2005

[quote:9880a1ae85=´Lucas Alves Silva´]Grave macros no excel e depois vai em editor de Visual Basic.
E olhe o código destas macros...
Depois é só colocar um [b:9880a1ae85]excel.[/b:9880a1ae85] antes dos comandos no delphi, que funciona blz....
Qualquer dúvida, posta ai..
T+,
Lucas![/quote:9880a1ae85]

Eu fiz assim:

  FWorkSheet.Range[K14, K14].FormulaR1C1 := 
     ´ROUNDUP(I´+ IntToStr(vContaLinha) + ´/J´ + IntToStr(vContaLinha)  + ´,0)´;


vContaLinha é uma variável integer que eu declarei, e que é incrementada por um laço for... ROUNDUP é a fórmula de AREDONDAR.PARA.CIMA...
Quando ele gear a planilha a célula K14 fica assim:

=ARREDONDAR.PARA.CIMA(´I14´/´J14´;0)

Estas aspas em I14 e J14 são um erro...

Como eu faço??


GOSTEI 0
Lucas Silva

Lucas Silva

11/01/2005

Estas aspas no numero é pq em algum lugar ai tem uma linha assim

excel.numerformat := ´@´;



Tira essa linha ai....


GOSTEI 0
POSTAR