Delphi'den Excel'e ulaşma

Günümüzde Excel bir sektör standartı haline gelmiş durumunda. Hemen hemen her programdan Excel'e çıktı alınabiliyor. Ancak bu bilgiler her zaman istediğimiz biçimde olmayabiliyor. İşte bu yazıda Delphi ile Excel'den nasıl bilgi okunur, Excel'e nasıl bilgi yazılır, Excel'de yapılan değişiklikler nasıl kaydedilir sorularının cevaplarını bulacaksınız.

Aşağıdaki kodları içeren örneği buradan indirebilirsiniz. Öncelikle Delphi'de Excel'le ilgili işlemler yapabilmek için uses satırına ComObj'yi eklemek gerekiyor. Daha sonra da aşağıdaki yapıyı kullanabilirsiniz.

procedure TForm1.Button1Click(Sender: TObject);
var
  ExcelUygulamasi: variant;
begin
  ExcelUygulamasi:=CreateOleObject('Excel.Application');
  try
    ExcelUygulamasi.Workbooks.Open(GecerliKlasoruAl+'Kitap1.xls');
    ExcelUygulamasi.WorkSheets.Item['Sayfa1'].Select;
    ExcelUygulamasi.Visible:=False;
    ShowMessage(ExcelUygulamasi.Cells[2, 3].Value);
  finally
    if not VarIsEmpty(ExcelUygulamasi) then
    begin
      ExcelUygulamasi.DisplayAlerts:=False; 
      ExcelUygulamasi.Quit;
      ExcelUygulamasi:=Unassigned;
    end;
  end;
end;

Yukarıdaki 3. satırda Excel işlemlerini yapacağımız değişken tanımlanıyor. 5. satırda tanımlanan değişkene ilişkin nesne oluşturuluyor. 7. satırda hangi Excel dosyasının  açılacağı belirleniyor. 8. satırda ise hangi sayfanın aktif hale getirileceği seçiliyor. 9. satırla ekranda Excel'in ekranda görünmesi engelleniyor. 10. satırda ise 2. satır ve 3. sütundaki hücre yani C3 hücresindeki bilgi mesaj olarak ekrana aktarılıyor. Finally bloğunda ise Excel değişkeni boşaltılıp Excel'den çıkılıyor. 

Excel'deki bir bilgiyi nasıl okuyacağımızı gördükten sonra, Excel'e nasıl bilgi aktaracağımızı görelim.

ExcelUygulamasi.Cells[3,2]:='Delphi';

Bu kodla 3. satırdaki 2. sütundaki hücreye yani B3 hücresine Delphi yazdırılıyor. Üzerinde değişiklik yapılan Excel dosyasını kaydetmek içinse su satıra ihtiyaç var.

ExcelUygulamasi.ActiveWorkBook.Close(SaveChanges:= 1);

Excel'e yeni bir çalışma sayfası eklemek ve ismini değiştirmek için şu kodlar kullanılır:

ExcelUygulamasi.Sheets.Add;
ExcelUygulamasi.ActiveSheet.Name:='Programdan eklenmiş sayfa';

Aşağıdaki döngü ile de  D1'den D10'a kadar 10 kere Delphi yazdırılıyor. 

for i:=1 to 10 do
  ExcelUygulamasi.Cells[i,4]:='Delphi: '+inttostr(i);

Bir hücreye formul eklemek içinse şu yapı kullanılır:

ExcelUygulamasi.Cells[ilkbossatir, 3].Formula:='=AVERAGE(C1:C'+inttostr(ilkbossatir-1)+')';

Böylece Delphi ile Excel'e yaptırabileceğimiz temel işlemleri öğrenmiş olduk. Delphi'den Excel'i açma ve kapatma işlemlerinin oldukça vakit aldığını belirterek bu yazıyı da sonlandıralım.

02.02.2015 13:59:40


Etiketler: excel, delphi fonksiyonları, pascal

Yorumlar

Bu yazıya henüz yorum yapılmamış.

Yazı hakkında yorum yapmak için, buraya tıklayın.

Kategoriler :

Arşiv :

Etiketler :

Bağlantılar :