Текущий архив: 2005.12.11;
Скачать: CL | DM;
ВнизЭкспорт из Excel в dbf Найти похожие ветки
← →
Uran (2005-02-21 11:22) [0]Мастера, подскажите пожалуйста, как осуществить экспорт содержимого каждого листа Excelевского файла в dbf файлы?
Заранее благодарен.
← →
YurikGL © (2005-02-22 21:40) [1]Либо построчно через OLE либо использовав соответсвующий провайдер данных
← →
rosl (2005-02-24 01:54) [2]код у меня большой, выбери то что нужно:
var
Excel: variant;
i, s, p, v, c, vi, cl, os: word;
SelfDir, shet, podr, ved, c_st, vr, clas, ost, path: string;
x : Integer;
begin
dm.OpenDialog.Filter:="Файлы проверки (БР)|*.xls";
dm.OpenDialog.FileName:="";
Form_progress.Caption:="Загрузка данных для проверки";
path := getcurrentdir;
SelfDir := options.Edit_path_baza.Text;
dm.Q_proverka.SQL[1]:="from " + """" + SelfDir + "\baza\main1.dbf" + """" + " b, " + """" + SelfDir + "\baza\main4.dbf" + """" + " p, " + """" + SelfDir + "\sprav\name.dbf" + """" + " n";
dm.T_proverka.TableName:=SelfDir + "\baza\main4.dbf";
dm.Client_proverka.Active:=false;
dm.T_proverka.Active:=false;
CopyFile(PChar(SelfDir + "\baza\temp.dbf"),PChar(SelfDir + "\baza\main4.dbf"),False);
dm.OpenDialog.Execute;
SetCurrentDir(path);
if dm.OpenDialog.FileName = "" then
exit;
Form_progress.ProgressBar.BarColor:=clBlue;
dm.T_proverka.DatabaseName:="";
dm.T_proverka.TableName:=SelfDir + "\baza\main4.dbf";
dm.T_proverka.Active:=true;
Form_progress.Show;
Excel := CreateOleObject("Excel.Application");
Excel.Workbooks.Open(dm.OpenDialog.FileName);
//Excel.visable:=true;
Excel.ActiveCell.SpecialCells(xlLastCell).Select;
x := Excel.ActiveCell.Row - 3;
Excel.Cells.Select;
Excel.Cells.NumberFormat:="@";
report_perefin.Label_period.Caption:="(Использованы данные для проверки " + Excel.Sheets[1].Cells[5,1].Text + ").";
if (Excel.Sheets[1].Cells[9,1].Text <> "Корр:Наименование") and
(Excel.Sheets[1].Cells[9,2].Text <> "Счет") and
(Excel.Sheets[1].Cells[9,3].Text <> "БК:Подр") and
(Excel.Sheets[1].Cells[9,4].Text <> "БК:Вед") and
(Excel.Sheets[1].Cells[4,1].Text <> "БР") and
(Excel.Sheets[1].Cells[x - 2,1].Text <> "ВСЕГО:") then
begin
Form_progress.Close;
showmessage("Выбранный Вами файл не является файлом проверки или содержит не верную структуру!");
Excel.DisplayAlerts := false;
Excel.Workbooks.close;
exit;
end;
Form_progress.ProgressBar.Max:=x-10;
for i := 10 to x do
for s := 2 to 2 do
for p := 3 to 3 do
for v := 4 to 4 do
for c := 5 to 5 do
for vi := 6 to 6 do
for cl := 7 to 7 do
for os := 12 to 12 do
begin
shet := Excel.Sheets[1].Cells[i,s].Text;
podr := Excel.Sheets[1].Cells[i,p].Text;
ved := Excel.Sheets[1].Cells[i,v].Text;
c_st := Excel.Sheets[1].Cells[i,c].Text;
vr := Excel.Sheets[1].Cells[i,vi].Text;
clas := Excel.Sheets[1].Cells[i,cl].Text;
ost := Excel.Sheets[1].Cells[i,os].Text;
dm.T_proverka.Insert;
dm.T_proverka.FieldByName("col01").AsString:=shet;
dm.T_proverka.FieldByName("col02").AsString:=podr;
dm.T_proverka.FieldByName("col03").AsString:=ved;
dm.T_proverka.FieldByName("col04").AsString:=c_st;
dm.T_proverka.FieldByName("col05").AsString:=vr;
dm.T_proverka.FieldByName("col06").AsString:=clas;
dm.T_proverka.FieldByName("col07").AsCurrency:=strtocurr(ost);
dm.T_proverka.Next;
Form_progress.ProgressBar.Position:=Form_progress.ProgressBar.Position + 1;
end;
Excel.DisplayAlerts := false;
Excel.Workbooks.close;
Form_progress.ProgressBar.Position:=0;
Form_progress.close;
← →
Uran (2005-02-24 14:19) [3]Спасибо большое! :)) то что нужно! :))))
Страницы: 1 вся ветка
Текущий архив: 2005.12.11;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.04 c