Executar comandos do excel no delphi

Delphi

19/02/2004

Preciso ler uma planilha do excel e antes de processar, tenho q ordenar uma coluna, já criei uma macro no excel ordenando e abri o código da mesma no vb do excel, peguei o código mais não consigo implementar no delphi. Se alguém souber alguma coisa sobre isso ou parecido e puder me passar.....agradeço.....

Marcos


Dallagnelo

Dallagnelo

Curtidas 0

Respostas

Lucas Silva

Lucas Silva

19/02/2004

Esse codigo é p/ exportar p/ o excell... acho que pode te ajudar....
uses ComObj;
.
.
.
procedure TForm1.Button1Click(Sender: TObject);
var excel: variant;
begin

      excel := CreateOleObject(´Excel.Application´);
      excel.Workbooks.add(1);
      excel.Cells.Select;
      excel.Selection.NumberFormat := ´@´;


      excel.cells[1,1] := ´Teste´;
      excel.columns.AutoFit;
      excel.cells[1,1].Select;
      excel.visible := true;

end;



GOSTEI 0
Dallagnelo

Dallagnelo

19/02/2004

Abaixo o código gerado pela macro para ordenar uma coluna no excel.

Selection.Sort Key1:=Range(´A1´), Order1:=xlAscending,
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

Não consigo implementar isso no delphi


Marcos


GOSTEI 0
Lucas Silva

Lucas Silva

19/02/2004

Tenta isso......
var excel: variant; 
begin 
      excel := CreateOleObject(´Excel.Application´); 
      excel.Selection.Sort Key1:=Range("A1");   
      excel.Order1:=xlAscending; 
      excel.Header:=xlGuess; 
      excel.OrderCustom:=1;       
      excel.MatchCase:=False; 
      excel.Orientation:=xlTopToBottom 
end;



GOSTEI 0
Dallagnelo

Dallagnelo

19/02/2004

Não funciona assim...... Imagino eu que o Selection.Sort é uma procedure e o resto são parametros......... mais não consigo funcionar.....

Sobre a primeira resposta q você me encaminhou, o que faz esses dois comandos (Cells.Select e columns.AutoFit)?

desde já agradeço....

Marcos


GOSTEI 0
Lucas Silva

Lucas Silva

19/02/2004

Sobre a primeira resposta q você me encaminhou, o que faz esses dois comandos (Cells.Select e columns.AutoFit)?


[b:0b1b684c7f]Cells.Select [/b:0b1b684c7f]- > seleciona as celulas que foram alteradas com algum valor.
[b:0b1b684c7f]columns.AutoFit[/b:0b1b684c7f] -> deixa a coluna do tamanho da maior string que estiver nela....


GOSTEI 0
POSTAR