Fórum Ajuda com Excel e Delphi #351144
27/12/2007
0
Olá estou fazendo um aplicativo que acessa o excel e importa os dados de uma plan para um banco em FB, uso ADO pra conextar ao arquivo de excel só que antes de conectar tenho que selecionar as celulas que contem dados e definir um nome pra essa seleção e não estou conseguindo pra isso totentando usar OLE
aqui é o codigo da minha unit:
Algem pode me ajudar??
aqui é o codigo da minha unit:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComObj;
type
TForm1 = class(TForm)
Button1: TButton;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
Excel: Variant;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Excel := CreateOleObject(´Excel.Application´);
if OpenDialog1.Execute then
begin
Excel.WorkBooks.Open(OpenDialog1.FileName);
end;
Excel.visible := True;
Excel.Range[´A1´].Select;
Excel.Range[´Selection, ActiveCell.SpecialCells(xlLastCell)´].Name := ´Eduardo´; (Aqui da erro )
Excel.ActiveSheet.Selection.NumberFormat := ´@´; (Se eu comentar a linha a cima e deixar essa da erro dizendo que ´Selection´ não é suportado em automação OLE)
end;
end.
Algem pode me ajudar??
Logam
Curtir tópico
+ 0
Responder
Posts
30/12/2007
Marcelo.mileris
Vou deixar aqui a solução do problema caso alguém precise fazer o mesmo um dia
Com isso, a planilha selecinada será configurada para ser utilizada com ADO, podendo assim, seus dados serem importados
Abraços
var Ate : string; begin try Excel := CreateOleObject(´Excel.Application´); if OpenDialog1.Execute then Excel.WorkBooks.Open(OpenDialog1.FileName); //Utilizo aqui o StringReplace pois o Address retorna $C$11 como resultado Ate := StringReplace(Excel.ActiveCell.SpecialCells(xlLastCell).Address,´$´,´´,[rfReplaceAll]); Excel.visible := True; Excel.Range[´A1´,Ate].Select; Excel.Range[´A1´,Ate].Name := ´Tabela´; except Excel.Quit; end;
Com isso, a planilha selecinada será configurada para ser utilizada com ADO, podendo assim, seus dados serem importados
Abraços
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)