Her Yönüyle Delphi ve Excell Kontrolü

Başlıktanda anlayacağınız gibi Her yönü ile delphi ve excel
Uses satırına  eklenecek
ComObj

Değişkenlerimi tanımlayalım

var
XLApp : OleVariant;
ColonAraligi : OleVariant;
const
alignCenter = -4108;
valignCenter = -4108;
alignRight =- 4152;

Excel Kontrolu

try
XLApp := GetActiveOleObject(‘Excel.Application’);
except
try
XLApp := CreateOleObject(‘Excel.Application’);
except
ShowMessage(‘Excel kurulu değil’);
Exit;
end;
end;
Var olan br excel’i açma
XLApp.Workbooks.Open(‘c:\gerizekali.xls’);
Yeni çalışma sayfası ekler.
XLApp.WorkBooks.Add;
Yeniden adlandır
XLApp.ActiveSheet.Name := ‘geri zekali’;
//Aktif Sayfanın ismini değiştirir

XLApp.Workbooks[1].WorkSheets[1].Name := ‘GeriZekali’;
//Belirttiğiniz sayfanın ismini değişirir.
Excel görünsün, görünmesin
XLApp.Visible := True;
//Gösterir
XLApp.Visible := False;
//Gizler
Hücre Seçme
XLApp.Range(‘A1:J25’).Select;
Hücreleri Birleştirme
XLApp.Range[‘A1:C1’].Mergecells := True;
//A1 den C1 e kadar olan hücreleri birleştirir
Hücre Hizalama
XLApp.Cells[1, 1].HorizontalAlignment := AlignCenter;
//Yatay Hizalama

XLApp.Cells[1, 1].VerticalAlignment := valignCenter;
//Dikey Hizalama
Satır Yüksekliği
XLApp.Rows[1].RowHeight := 30;
Border
XLApp.Range[A1,C1].Borders.Weight := 1;
Border Rengi
XLApp.Cells[1, 1]..Borders[1].Colorindex := -4142;
Font Ayarları
XLApp.Range[‘A1:A1’].Font.Bold := True;
//Bold yapar
XLApp.Range[‘A1:A1’].Font.Size := 12;
//Size 12 yapar
Gridleri gizler
XLApp.ActiveWindow.DisplayGridlines := False;
Değer atama
XLApp.Cells[1, 1].Value := ‘Ben bir Geri Zekalıyım’;
//yukarida A,C hücrelerini birleştirdiğimiz için  bundan sonra aynı satırda bir sonraki hücreye bir değer atamak istersek
XLApp.Cells[1, 4].Value := ‘deneme’; dememiz gerekli
Kolon Aralığı
ColonAraligi := XLApp.Workbooks[1].WorkSheets[1].Columns;
ColonAraligi.Columns[4].ColumnWidth := 25;

//burada ColonAraligi : OleVariant; değişkenimizden yararlandık, 4. kolonun genişliğini 25 yaptık.

//Kolon Otomatik Genişlesin
XLApp.selection.Columns.AutoFit;

Rakamları Formatlama
XLApp.WorkBooks[1].WorkSheets[1].Columns[2].NumberFormat := ‘#.##0’;
//2 kolona girilecek sayıları formatladık 1.250.000 şeklinde

XLApp.WorkBooks[1].WorkSheets[1].Columns[2].NumberFormat := “;
//Formatlı bir hücreyi formatsız yapar.
Tarih Formatlama
XLApp.Cells[1,1].Value := FormatDateTime(‘dd-mmm-yyyy’, Now);
Formuller
XLApp.Range[‘A5’, ‘A5’].Formula := ‘=Sum(A1:A4)’;
//A1 hücresinden A4 hücresine kadar Toplar Değerlerini A5 hücresine yazar.
Kaydet
XLApp.SaveAs(‘c:\GeriZekali.xls’);
//Çalışma sayfasını kaydeder

XLApp.ActiveWorkBook.SaveAs(‘c:\GeriZekali.xls’);
//Aktif sayfayı kaydeder.
Yazıcı Ayarları
//Kenarlıklar

XLApp.ActiveSheet.PageSetup.LeftMargin := 0;
XLApp.ActiveSheet.PageSetup.RightMargin := 0;
XLApp.ActiveSheet.PageSetup.TopMargin := 0;
XLApp.ActiveSheet.PageSetup.BottomMargin := 0;

//Hizalama
XLApp.ActiveSheet.PageSetup.CenterHorizontally := 1;
//Yatay Olarak Ortaya alır
XLApp.ActiveSheet.PageSetup.CenterVertically := 1;
//Dikey Olarak Ortaya Alır

//Sayfa Ayarları
XLApp.ActiveSheet.PageSetup.Orientation := 2;
//2 yatay 1 dikey olarak ayarlar.
Alt Bilgi
XLApp.ActiveSheet.PageSetup.LeftFooter := ‘Rapor Tarihi : ‘ + ‘&D’;
//O günü tarihini sayfanın alt bilgi kısmına basalım
Kaçıncı Sayfa
XLApp.ActiveSheet.PageSetup.RightFooter := ‘Sayfa : ‘ + ‘&P’+’/’+’&N’;
//Yazıcıdan aldığımız sayfaların kaç sayfada hangi sayfa bilgisini gösterir
Alt Bilgi için diğer parametreler

&L
&C
&R
&E
&X
&Y
&B
&I
&U
&S
&D
&T
&F
&A
&P
&P+number
&P-number
&&
& “Font Adı”
&nn
&N

//bunarın karşılıklarınıda artık zahmet edip tektek deneyerek anlamlarını bulunuz. :)) (Yaşasın Kötülük)

Tekrar Eden Saatırlar
XLApp.ActiveSheet.PageSetup.PrintTitleRows := ‘$2:$2’;
//Yazılan Sayfada başlık olarak tekrar etmesini sağlarız.
İstediğiniz hücreleri $2:$2 dediğimizde ikinci satırı olduğu gibi her print edilen sayfanın başında gösterir
Yazıcı Renkli, Renksiz
XLApp.ActiveSheet.PageSetup.BlackAndWhite := False;

Yazıcı Görüntüsü
XLApp.ActiveSheet.PrintPreview;
Kopya Sayısı
XLApp.ActiveWindow.SelectedSheets.PrintOut (Copies := 1);
//Kaç Kopyası Olsun
//Sığdır
XLApp.ActiveSheet.PageSetup.Zoom := 65;
//Çalışma Sayfanızı 1 Sayfaya Sığdırır.
Kapat

if not VarIsEmpty(XLApp) then
begin
XLApp.DisplayAlerts := False;
XLApp.Quit;
XLApp:=unassigned;

//Formunuzun OnDestroy olayına bu satırları yazınki form kapandığında Excel havada asılı kalmasın.

Etiketler : delphi ve excell , tüm excell komutları , excell komutları , excell e veri aktarmak, excell e veri göndermek, excell ve delphi, excell de yazıcı ayarı, excell de alt bilgi, excell de hücre ayarları,  excellde yeni çalışma sayfası açmak, delphi ile excellde çalışma sayfası,excell de hücreleri birleştirme, excell de satır yüksekliği, excell de hizalama , excell de kenarlıklar, excell de kenarlık komutları, excell de tarih formatlama , delphi ile excell e formül yollama, excell e formül yollama, excell de font ayarları, delphi ile excell de font ayarları

administrator2009-08-30 15:53:02

Bir cevap yazın