
09.01.2015, 22:47
|
 |
Гуру
|
|
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
|
|
Да я даже и не глянул на дату вопроса 
Ладно, не пропадать же ответу. Может кому сгодится.
Код:
unit Unit28;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, Grids, DBGrids, ADODB;
type
TForm28 = class(TForm)
ADOTable1: TADOTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
ComboBox1: TComboBox;
Edit1: TEdit;
Button1: TButton;
procedure FormActivate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form28: TForm28;
implementation
{$R *.dfm}
procedure TForm28.Button1Click(Sender: TObject);
begin
if AdoTable1.Filtered
then AdoTable1.Filtered := not AdoTable1.Filtered
else begin
AdoTable1.Filter := Format('[%s]=''%s''',[ComboBox1.Items.Strings[ComboBox1.ItemIndex], Edit1.Text]);
AdoTable1.Filtered := True;
end;
end;
procedure TForm28.FormActivate(Sender: TObject);
Const
XLSXConnectStr = 'Provider=Microsoft.ACE.OLEDB.12.0;Data Source=%s;Extended Properties="Excel 12.0 Xml;HDR=YES";';
Var
i: Integer;
begin
AdoTable1.ConnectionString := Format(XLSXConnectStr, ['D:\2\список.xlsx']);
AdoTable1.TableName := '[Лист1$]';
AdoTable1.Open;
for i := 0 to 5 {AdoTable1.Fields.Count - 1}
do ComboBox1.Items.Add(AdoTable1.Fields[i].FieldName);
ComboBox1.ItemIndex := 1;
end;
end.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
|