Excel'den DB'ye..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
n0nex
Üye
Mesajlar: 9
Kayıt: 07 Şub 2016 11:37

Excel'den DB'ye..

Mesaj gönderen n0nex »

Merhaba arkadaşlar.
Öncelikle belirtmek isterim ki forumdaki mevcut konuları okudum fakat maalesef problemimi çözemedim.
*
Excel'den veri aktarımı konusunda yardımcı olur musunuz?

Teşekkürler
En son n0nex tarafından 20 Şub 2016 11:37 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
ugorkem
Üye
Mesajlar: 8
Kayıt: 17 Şub 2016 09:09

Re: Excel'den DB'ye..

Mesaj gönderen ugorkem »

Çok eskiden Adoquery ile ilgili küçük bir örnek yayınlamıştım. inceleyebilirsiniz...
http://www.prostudyo.com/download/delph ... lanma.html
denizfatihi
Üye
Mesajlar: 254
Kayıt: 16 Şub 2004 06:12
Konum: istanbul

Re: Excel'den DB'ye..

Mesaj gönderen denizfatihi »

Kod: Tümünü seç

procedure TForm1.BitBtn8Click(Sender: TObject);
Const
  xlCellTypeLastCell = $0000000B;
var
    book:variant;
    excel,sheet:variant;
    satir, sutun:integer;
    str,strr :string;
begin
    excel := createOleObject('Excel.application');
    OpenDialog1.Filter := 'Excel Dosyaları (*.xls;*.xlsx)|*.xls;*.xlsx';
    if opendialog1.Execute then
    begin
        book:= Excel.WorkBooks.Open(OpenDialog1.FileName);
        try
            Screen.Cursor := crHourGlass;
            sheet := book.worksheets['F'];  // Burası excel dosyasındaki sayfa adı

     
            satir:=2; // Sutun başıkları varsa 2.satırdan yazmaya başlar
            
            for satir:=2+1 to Excel.ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell, EmptyParam).Row do
            begin
                str := sheet.cells[satir, 1];
                if (str <> '') then

                begin
                    Update;
                    ADOQuery1.Append;

                    for sutun:=1 to 14 do // 14 adet sutun var güncellenir.
                    
                    ADOQuery1.Fields[sutun-1].AsString :=sheet.cells[satir, sutun];
                    ADOQuery1.Post;
                end;
            end;
            Excel.quit;
        finally
            Screen.Cursor := crDefault;
        end;
ertank
Kıdemli Üye
Mesajlar: 1653
Kayıt: 12 Eyl 2015 12:45

Re: Excel'den DB'ye..

Mesaj gönderen ertank »

Merhaba,

Bu tarz işleri çok yapıyorsanız bir component kullanmak faydalı olabilir. Excel ve birçok farklı formattan daha veri aktarımı yapabilen aşağıdaki component paketini inceleyebilirsiniz. Kaynak kod içeren paket almanıza gerek yok. Böylece fiyatı çok daha makul bir hale gelecektir.

http://www.scalabium.com/smi/
Kullanıcı avatarı
badkursat
Üye
Mesajlar: 84
Kayıt: 03 Mar 2014 08:58

Re: Excel'den DB'ye..

Mesaj gönderen badkursat »

Exceldeki veriyi ADOQuery'de göstermek için
https://www.youtube.com/watch?v=temuC8P1T6s

SQL Script Oluşturmak İçin
http://witalihakko.blogspot.com.tr/2015 ... -alma.html
Kullanıcı avatarı
fesiharslan
Üye
Mesajlar: 591
Kayıt: 20 Eki 2006 11:37
Konum: Erzurum
İletişim:

Re: Excel'den DB'ye..

Mesaj gönderen fesiharslan »

Döngü içerisinde her kaydı tablo alanlarına aktarmadan önce ADOQuery1.Append; aktardıktan sonra da ADOQuery1.Post; metotlarını kullanmalısınız.
Cevapla