Delphi Personal で ADO

Excelファイルを読む


procedure TForm1.Button23Click(Sender: TObject);
var
cn :Variant;//Connection
rs :Variant;//Recordset
sql:string;
const
adOpenDynamic: Integer = 2;
adOpenForwardOnly: Integer = 0;
adOpenKeyset: Integer = 1;
adOpenStatic: Integer = 3;
adOpenUnspecified: Integer = -1;

adLockBatchOptimistic: Integer = 4;
adLockOptimistic: Integer = 3;
adLockPessimistic: Integer = 2;
adLockReadOnly: Integer = 1;
adLockUnspecified: Integer = -1;
begin
//表示用コントロールをクリア
ListBox1.Items.Clear;
ListBox2.Items.Clear;

cn := CreateOleObject('ADODB.Connection');

//Edit3 に ファイル名を入力
cn.ConnectionString := 'Driver={Microsoft Excel Driver (*.xls)};DBQ=' + Edit3.Text + ';';
cn.Open;

//Edit4 に シート名を入力
sql := 'SELECT * FROM [' + Edit4.Text + '$]';

rs := CreateOleObject('ADODB.Recordset');
rs.Source := sql;
rs.Activeconnection := cn;
rs.CursorType := adOpenForwardOnly;
rs.LockType := adLockReadOnly;
rs.Open;

while not rs.EOF do
begin
//表示用コントロールに項目内容をセット
ListBox1.Items.Add(rs.Fields[0].Value);
ListBox2.Items.Add(rs.Fields[1].Value);

rs.MoveNext;
end;

rs.Close;
cn.Close;
end;