Excel den delphiye veri aktarma.

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
ozlemsaltan
Üye
Mesajlar: 38
Kayıt: 01 Nis 2014 05:57

Excel den delphiye veri aktarma.

Mesaj gönderen ozlemsaltan »

Merhaba arkadaşlar benim delphi de yazdığım bir programa excel den veri aktarmam gerekiyor. Veri sayısı çok olduğu için el ile programa giriş yapmam imkansız. örneğin excel de adı soyadı tc no gibi alanlar var. Bunları delphide ki programımın içindeki ad soyad ve tc no kısımlarında görmem lazım. Veritabanıma kaydetmesi gerek bu yüzden. önerebileceğiniz bir kısayol veya yöntem var mı?? Acil dönüş yaparsanız çok sevinirim cumaya teslim etmem gerek^^ Teşekkürler
Çaylak yazılımcı:)
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Re: Excel den delphiye veri aktarma. Acillll!

Mesaj gönderen G.Arkas »

Programın hangi öğesine aktarım yapacaksınız? (Grid, ListView vs). Sorunuz açıklayıcı olsun lütfen.
Resim
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: Excel den delphiye veri aktarma. Acillll!

Mesaj gönderen greenegitim »

component ile bu işi yapabilirsin kod yazmadan
EMS Advanced Import Component
Mücadele güzelleştirir!
Kullanıcı avatarı
White Rose
Üye
Mesajlar: 726
Kayıt: 06 Tem 2005 09:41
Konum: Güneyden
İletişim:

Re: Excel den delphiye veri aktarma. Acillll!

Mesaj gönderen White Rose »

Paket programlar bölümünde Excel import programı var bir bakın

viewtopic.php?f=12&t=26745&hilit=excel
Kullanıcı avatarı
ender_arslanturk
Kıdemli Üye
Mesajlar: 709
Kayıt: 18 Şub 2005 03:38
Konum: İstanbul

Re: Excel den delphiye veri aktarma.

Mesaj gönderen ender_arslanturk »

Selâmlar,

StringGrid nesnesine excelde ki verilerinizi alır.

Uses Math;

Örnek Fonksiyon :

Kod: Tümünü seç

function ExceldenStringGrideAL(AGrid: TStringGrid; AXLSFile: string): Boolean;
const
  xlCellTypeLastCell = $0000000B;
var
  XLApp, Sheet: OLEVariant;
  RangeMatrix: Variant;
  x, y, k, r: Integer;
begin
  Result := False;
  // Create Excel-OLE Object
  XLApp := CreateOleObject('Excel.Application');
  try
    // Hide Excel
    XLApp.Visible := False;

    // Open the Workbook
    XLApp.Workbooks.Open(AXLSFile);

    // Sheet := XLApp.Workbooks[1].WorkSheets[1];
    Sheet := XLApp.Workbooks[ExtractFileName(AXLSFile)].WorkSheets[1];

    // In order to know the dimension of the WorkSheet, i.e the number of rows
    // and the number of columns, we activate the last non-empty cell of it

    Sheet.Cells.SpecialCells(xlCellTypeLastCell, EmptyParam).Activate;
    // Get the value of the last row
    x := XLApp.ActiveCell.Row;
    // Get the value of the last column
    y := XLApp.ActiveCell.Column;

    // Set Stringgrid's row &col dimensions.

    AGrid.RowCount := x;
    AGrid.ColCount := y;

    // Assign the Variant associated with the WorkSheet to the Delphi Variant

    RangeMatrix := XLApp.Range['A1', XLApp.Cells.Item[X, Y]].Value;
    //  Define the loop for filling in the TStringGrid
    k := 1;
    repeat
      for r := 1 to y do
        AGrid.Cells[(r - 1), (k - 1)] := RangeMatrix[K, R];
      Inc(k, 1);
      AGrid.RowCount := k + 1;
    until k > x;
    // Unassign the Delphi Variant Matrix
    RangeMatrix := Unassigned;

  finally
    // Quit Excel
    if not VarIsEmpty(XLApp) then
    begin
      // XLApp.DisplayAlerts := False;
      XLApp.Quit;
      XLAPP := Unassigned;
      Sheet := Unassigned;
      Result := True;
    end;
  end;
end;

Kullanımı :

Kod: Tümünü seç

ExceldenStringGrideAL(StringGrid1, 'C:\SeyrangahTV.xls');
Kullanıcı avatarı
pasa_yasar
Üye
Mesajlar: 570
Kayıt: 07 Haz 2004 12:35

Re: Excel den delphiye veri aktarma.

Mesaj gönderen pasa_yasar »

Adoconnection ile yapabilirsin. Manuel olarak dosyayı seçtirirsin. adoconnectionda string alanını seçilen dosya ve path aktarırısın. adotable ile sayfa adları gelir oradan döngü ile hepsini aktarırsın. Office 2007 için bi eklenti kurman gerekiyor tam hatırlamıyorum adımı office 2003 vs. çalışıyor. Adoconnection excel yazıp arartırsan çıkar. Bulamazsın eskilerde bir yerde kodu vardı. Yazarım buradan
Kullanıcı avatarı
pasa_yasar
Üye
Mesajlar: 570
Kayıt: 07 Haz 2004 12:35

Re: Excel den delphiye veri aktarma.

Mesaj gönderen pasa_yasar »

viewtopic.php?f=12&t=26745&hilit=excel
şimdi baktım paket programlar bölümünde sabanakman paylaşmış.
Kullanıcı avatarı
ozlemsaltan
Üye
Mesajlar: 38
Kayıt: 01 Nis 2014 05:57

Re: Excel den delphiye veri aktarma.

Mesaj gönderen ozlemsaltan »

arkadaşlar merhaba ben hala bu sorunumu çözemedim. excelden delphiye aktarım olayını anladım ama bunları benim programdaki alanlarıma nasıl aktarabilirim??
Çaylak yazılımcı:)
Lord_Ares
Üye
Mesajlar: 1070
Kayıt: 15 Eki 2006 04:33
Konum: Çorlu

Re: Excel den delphiye veri aktarma.

Mesaj gönderen Lord_Ares »

Formda bunu paylaşmıştım fakat sanırım görme şansınız olmamıştı. Buyrun size açıklamalı örnek.
Dosya ekleri
excell.rar
Excel veritabanına aktarım
(15.03 KiB) 296 kere indirildi
apex06
Üye
Mesajlar: 58
Kayıt: 19 Nis 2012 12:21

Re: Excel den delphiye veri aktarma.

Mesaj gönderen apex06 »

ozlemsaltan yazdı:arkadaşlar merhaba ben hala bu sorunumu çözemedim. excelden delphiye aktarım olayını anladım ama bunları benim programdaki alanlarıma nasıl aktarabilirim??
Merhaba,
Naçizane şöyle bir fikrim var;
tek seferlik bir işlemse bu. exceldeki bilgileri insert into ya göre düzenleyip direk veritabanına ekleyebilirsiniz.
Kullanıcı avatarı
ozlemsaltan
Üye
Mesajlar: 38
Kayıt: 01 Nis 2014 05:57

Re: Excel den delphiye veri aktarma.

Mesaj gönderen ozlemsaltan »

Arkadaşlar teşekkür ederim. Bu tek seferlik yapacağım bir işlem olacak insert ile ekleyebilirim sanırım. Fakat gireceğim veri sayısı 500 e yakın bunun için bir döngü kurmalıyım sanırım. Fikri olan?
Çaylak yazılımcı:)
Lord_Ares
Üye
Mesajlar: 1070
Kayıt: 15 Eki 2006 04:33
Konum: Çorlu

Re: Excel den delphiye veri aktarma.

Mesaj gönderen Lord_Ares »

ozaman şöyle yapabilirsiniz, excel dosyasını farklı kaydet diyerek dbf dosyaları olarak kaydedin. Bu şekilde excel dosyasını, SQL kullanarak normal veritabanı gibi kullanabilir sorgu , giriş, çıkış gibi işlemler yapabilirsiniz.
Kullanıcı avatarı
ozlemsaltan
Üye
Mesajlar: 38
Kayıt: 01 Nis 2014 05:57

Re: Excel den delphiye veri aktarma.

Mesaj gönderen ozlemsaltan »

evet o şekilde düşünüyorum teşekkür ederim hepinize arkadaşlar^^ :)
Çaylak yazılımcı:)
Cevapla