я загружаю в программу дбф от отображается в DBGrid как мне это сохранить в Excel ?
Как можно сделать поиск по записям ?
как мона сделать проверку на правельность заполнения строк в столбцах в загруженном DBF ?
Помогите

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
Код: Выделить всё
procedure ExportDBGrid(toExcel: Boolean);
var
bm: TBookmark;
col, row: Integer;
sline: string;
mem: TMemo;
ExcelApp: Variant;
begin
Screen.Cursor := crHourglass;
Form1.DBGrid1.DataSource.DataSet.DisableControls;
bm := Form1.DBGrid1.DataSource.DataSet.GetBookmark;
Form1.DBGrid1.DataSource.DataSet.First;
if toExcel then
begin
ExcelApp := CreateOleObject('Excel.Application');
ExcelApp.WorkBooks.Add(xlWBatWorkSheet);
ExcelApp.WorkBooks[1].WorkSheets[1].name := 'Grid Data';
end;
mem := TMemo.Create(Self); // Почему тут на Self прога ругается ?
mem.Visible := false;
mem.Parent := MainForm;
mem.Clear;
sline := '';
for col := 0 to Form1.DBGrid1.FieldCount-1 do
sline := sline + Form1.DBGrid1.Fields[col].DisplayLabel + #9;
mem.Lines.Add(sline);
for row := 0 to Form1.DBGrid1.DataSource.DataSet.RecordCount-1 do
begin
sline := '';
for col := 0 to Form1.DBGrid1.FieldCount-1 do
sline := sline + Form1.DBGrid1.Fields[col].AsString + #9;
mem.Lines.Add(sline);
Form1.DBGrid1.DataSource.DataSet.Next;
end;
mem.SelectAll;
mem.CopyToClipboard;
if toExcel then
begin
ExcelApp.Workbooks[1].WorkSheets['Grid Data'].Paste;
ExcelApp.Visible := true;
end;
FreeAndNil(ExcelApp);
Form1.DBGrid1.DataSource.DataSet.GotoBookmark(bm);
Form1.DBGrid1.DataSource.DataSet.FreeBookmark(bm);
Form1.DBGrid1.DataSource.DataSet.EnableControls;
Screen.Cursor := crDefault;
end;
//Допустим все что выше выполнилося
procedure TForm1.Button5Click(Sender: TObject);
begin
Тогда что писать тут для сохронения файла ?
end;
Код: Выделить всё
и закрывающий
Код: Выделить всё
while not MyTable.EOF do
begin
//
MyTable.Next;
end;