İyi günler aşağıdaki kodla excele dosya gönderiyorum.
Benim istediğim ise excele attığım bu bilgileri Drno sütununa göre sıralama yaptırmak.
procedure Tfrmmain.Excel1Click(Sender: TObject);
var
v,sayfa:variant;
i,d,k:integer;
r:variant;
begin
table1.First;
v:=createoleobject('excel.application');
v.workbooks.add;
sayfa:=v.workbooks[1].worksheets[1];
r:=v.activeworkbook.worksheets[1].cells[1];
k:=0;
repeat
r.cells[1,k+1]:=Table1.Fields[k].DisplayLabel;
k:=k+1;
until k=table1.Fields.Count;
i:=0;
d:=0;
while Not Table1.eof do
begin
i:=i+1;
d:=d+1;
r.cells[1+d,i]:=Table1.FieldByName('Drno').AsString;
r.cells[1+d,i+1]:=Table1.FieldByName('ad').AsString;
r.cells[1+d,i+2]:=Table1.FieldByName('Soyad').AsString;
r.cells[1+d,i+3]:=Table1.FieldByName('ogretmenad').AsString;
Table1.Next;
i:=0;
r.cells[1,1]:='Dershane No';
r.cells[1,2]:='Ad';
r.cells[1,3]:='Soyad';
r.cells[1,4]:='Öğretmen Adı';
r.columns[1].font.bold:=True;
r.columns[2].font.bold:=True;
r.columns[3].font.bold:=True;
r.columns[4].font.bold:=True;
end;
v.visible:=true;
end;
Excelde sıralama
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Eğer Drno sütutnuna göre sıralama yapacaksan ya bunu excelde attıktansonra excelde yapa yada atmadan önce SQL le yap..aktaracağın kayıtları seç
asc a-z ye dec z-a ya
kolay gelsin
Kod: Tümünü seç
order by sıralamaalanı asc
kolay gelsin
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
aslında Table yerine query Kullanırsan istedigin alana gore sıralama yaparsın .. ve aktarma isleminde o sıraya gore olur ..
ama illaki Table kullancam dersen ...
sıralama icin asagıdaki kodu kullanabilirsin ...
ama illaki Table kullancam dersen ...
sıralama icin asagıdaki kodu kullanabilirsin ...
Kod: Tümünü seç
var a:Olevarint;
begin
....
sayfa.Columns['A:D'].Select; // Burada A ve G sutunlarını sectim ...
v.Selection.Sort(sayfa.Range['A1'],1,a,a,1,a,1,xlYes);
// xlYes Baslık varsa xlNo yoksa .. 1 ise artan 2 ise azalan .. .....