access veri tabanını kullanıp forma adoconnection, adodataset ve dbgrid,opendialog, label ve button ekledim.
mdb içerisinde 100 adet telefon,ad ve soyad olan sadece üç alan mevcut aşağıdaki kodla excel dosyasından aldığım 80 adet kayıdı mdb içine update edebiliyorum.(sonuna ekliyor) bu excel dosyasındaki 80 kaydın 25 tanesi mdb de bulunan 100 kayıt içerisinde mevcut. ben kayıt esnasında bu aynı kayıtların mdb ye eklenmemesi ve eklenmeyen şu kadar kayıt oldu şeklinde bir uyarı olmasını istiyorum. update işlemini ilk yaptığım için bayağı zorlandım. aşağıdaki kod üzerinde yard olursanız çok sevinirim. çok basit olduğunu tahmin ediyorum. acemiliğime sayın. teşekkürler
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
var
book:variant;
excel,sheet:variant;
satir, sutun:integer;
str:string;
begin
excel := createOleObject('Excel.application');
OpenDialog1.Filter := 'Excel Dosyaları (*.xls)|*.xls';
if opendialog1.Execute then
begin
book:= Excel.WorkBooks.Open(OpenDialog1.FileName);
sheet := book.worksheets[1];
for satir:=1 to 100 do
begin
str := sheet.cells[satir, 1];
Label1.Caption := str;
Update;
AdoDataset1.Append;
for sutun:=1 to 3 do
AdoDataset1.Fields[sutun-1].AsString :=sheet.cells[satir, sutun];
AdoDataset1.Post;
end;
Excel.quit;
excel:=Unassigned;
end;
end;
end.