Delphide üreteceğim bilgileri Access database işlemek için örnek alabileceğim basit bir kod parçası arıyorum.
madem basit bir kod arıyorsunuz yerinizde olsam access değilde excelli VT olarak kullanırdım.
http://www.cerezforum.com/delphi-ile-baslangic/31963-delphi-excel-veritabani-baglantisi.html (http://www.cerezforum.com/delphi-ile-baslangic/31963-delphi-excel-veritabani-baglantisi.html)
Bu konularla içli dışlı değilim hiç bilgimde yok. Sorunum wordde otomatik mektup yazma özelliği var. Verileri accesden alıyor.
Verileri accese atayım ve bu pislik işten bir an önce kurtulayım istiyorum.
Selam,
Torry.net in tips kısmında yüzlerce kod parçası var derli toplu.
http://www.swissdelphicenter.ch/torry/ (http://www.swissdelphicenter.ch/torry/)
http://www.swissdelphicenter.ch/torry/showcode.php?id=1695 (http://www.swissdelphicenter.ch/torry/showcode.php?id=1695)
Analyzer
Biraz kolaycılık olacak ama indireceğim zıpı patlatınca ortaya çıkan delphi proje dosyasını derleyince çalışıveren bir kod parçasına kendi kodlarımı yamayıp devam etmek istiyorum.
Bu soruna hala cozum bulamadim. Bu kez soyle yapacagim.
Access den export ederek verileri excelle atacagim.
Delphi program excel dosyayi okuyacak. Excel dosyada gerekli gereksiz sutunlar var.
Bunlardan sadece adi soyadi adresi sutunlarindaki verileri alt alta text dosyaya yazacak.
Bir satir bosluk koyarak bir sonraki ad soyad ... bilgileri text dosyaya aktarilacak.
Ahmet Gullu
A Caddesi No 11
Adana
Mehmet Velioglu
B Caddesi No 13
Mersin
gibi....
Daha once Delphi ile excel dosya uzerinde hic calismadim.
Bu programin excel okuma kismi icin yardimlariniza ihtiyacim var.
Hocam Bir saniye Konuyu Görmemişim.
EXCEL excel dir veritabanı değildir. Veri tabanı olabilmesi için ilişki kurabilmesi gerekir.
http://planet-source-code.com/vb/scripts/BrowseCategoryOrSearchResults.asp?lngWId=7&grpCategories=6&optSort=Alphabetical&txtMaxNumberOfEntriesPerPage=10 (http://planet-source-code.com/vb/scripts/BrowseCategoryOrSearchResults.asp?lngWId=7&grpCategories=6&optSort=Alphabetical&txtMaxNumberOfEntriesPerPage=10)
burada aradığınızı bulacağınıza inanıyorum.
Aşağıdaki örnek için Ado connection ve Ado query 'i componentlerden ekleyin
bendeki excell dosyasında iki sütun var ve iki sütunda da sayılardan oluşan veriler var verileri ikinci sütundan alıyorum(F2)
procedure TMainForm.Button1Click(Sender: TObject);
var
strConn : widestring;
i:Integer;
begin
strConn:='Provider=Microsoft.Jet.OLEDB.4.0;' +
'Data Source=' + 'C:\x.xls' + ';' +
'Extended Properties=Excel 8.0;';
AdoConnection1.Connected:=False;
AdoConnection1.ConnectionString:=strConn;
try
AdoConnection1.Open;
AdoConnection1.Connected:=True;
except
ShowMessage('Excell dosyası yerinde mi, bulamıyom!');
raise;
end;
if AdoConnection1.Connected then begin
AdoQuery1.Close;
AdoQuery1.SQL.Text:='select * from [Sheet1$]';
try
AdoQuery1.Open;
except
ShowMessage('Excell dosyası açılmıyo!');
raise;
end;
for i := 0 to ADOQuery1.RecordCount-1 do begin
data:=ADOQuery1.fieldbyname('F2').AsInteger;
data1:=ADOQuery1.fieldbyname('F2').AsInteger*3;
ADOQuery1.Next;
end;
end;
end;
Hocam burada
data:=ADOQuery1.fieldbyname('F2').AsInteger;
data1:=ADOQuery1.fieldbyname('F2').AsInteger*3;
data ve data1 dediğimiz nedir?
Alıntı yapılan: z - 25 Eylül 2013, 13:07:35
Hocam burada
data:=ADOQuery1.fieldbyname('F2').AsInteger;
data1:=ADOQuery1.fieldbyname('F2').AsInteger*3;
data ve data1 dediğimiz nedir?
Selam,
Belirtilen excel tablosundaki F2 hücresinin içeriğini integer olarak data değişkenine, F2 integer değerin 3 katını da data1 değişkenine yazmış.
Analyzer
C de root altına x.xls dosyası koydum.
Butona tıkladığımda
try
AdoQuery1.Open;
except
ShowMessage('Excell dosyası açılmıyo!');
raise;
satırlarında AdoQuery1.Open; işlenirken aşağıdaki hatayı alıyorum.
Project Project1.exe raised exception class EdatabaseError with messsage Missing Connection or ConnectionString
Ne yapacağım?
Microsoft Office Excel 2003 SP3 kullanıyorum.
Aşağıdaki satırlarda değişiklik yapmam gerekiyormu?
strConn:='Provider=Microsoft.Jet.OLEDB.4.0;' +
'Data Source=' + 'C:\x.xls' + ';' +
'Extended Properties=Excel 8.0;';
mesaj birleştirme:: 25 Eylül 2013, 13:58:08
Neyse Access verileri text dosya olarak da export edebiliyormuş. Her bir veri arasına ; koyduğu için verileri decode etmem zor olmayacak.
Gene de yukarıdaki konuya açıklık getirebilirsek iyi olacak.
Yapmayın
OLEDB kullanıp excel e bağlantımı kuruyorsunuz ?
Ben de office 2003 kullanıyorum herhangi bir değişikliğe gerek yok.
...data ve data1 kendi oluşturduğum iki dizi, bunlara excell "B" sütunundan okuduğum veriyi sıralı bir şekilde diziye almak için yazdım, kullanmanız gerekmez. Siz verinizi nasıl almak istiyorsanız o şekilde düzenleyebilirsiniz.
Bağlantı hatasına gelince Ado connection->properties->Provider MSOLAP.2 yi seçip deneyin. Daha olmadı Connection string den bağlantıyı kendiniz yapılandırın.
Bülent Hocam Yapmak İstediğin Nedir Ne için Kullanacaksın ?
İlla Delphi Şart mı, Ne Kaydedeceksin ? Sadece Access Kullansak Form felan Olsa Olmaz Mı ?
Access de kayitli sahis bilgilerinden davetiye karti basmak icin program yaziyordum hocam. Neyseki isimi gordum. Access deki datalari text olarak export edebiliyormusuz. Text dosya icinde datalar (sutunlar) birbirinden ; ile ayrilmis.
Cok basit bir sekilde istedigim alanlari cektim.
Access deki bilgileri Doğrudan Etiket yapabiliyorsunuz. (yine access içerisindeki Raporlar dan)