Excel den şartlı veri al

16/11/2008, 18:50

adnan

Merhaba;

Aynı klasör içerisinde acces ve Excel dosyaları var. Excelde Malzeme adlarını ve malzeme sicil nolarının kayıtlı olduğu sutunlar var. Accessde de yine malzeme adları ve malzeme sicil nolarının bulunduğu alanlar var. Access de form oluşturdum form üzerinde onay kutuları ve ve birde metin kutusu var. Örnek: Taşınır adı onay kutusu işaretli, malzeme adı onay kutusu işaretli metin kususunda da 25 yazılı. Exceldeki malzeme adı, malzeme sicil no sütunlarında verileri sıra no na bakarak 1 den 25 kadar olanları Access de ilgili alanlara aktaracak. Örnekte ayrıtılı açıklamasını yazdım. Yardımlarınızı bekliyorum.

Saygılarımla.
16/11/2008, 21:55

ayhan2122

Sn adnan;
Bence exceli accesse bağlasan hiç bu kadar uğraşmasan daha iyi.
Dosya > DışVeriAl > TablolarıBağla tıkla
açılan Bağla penceresinde DosyaTürü olarak MicrosoftExcel seç ve dosyanı bağla . Sonra istediğin gibi kullan. Daha iyi olmaz mı? )
17/11/2008, 21:39

adnan

Merhaba;

Sn.ayhan2122 cevabınız için teşekkürederim. Sizin yönteminizle exceldeki tüm verileri alıyor. 1. mesajımda belirtiğim gibi koşşulu olarak excelden verileri almam gerekiyor.

Selamlar.
18/11/2008, 01:25

mehmetdemiral

O hepsini alsın, siz lazım olanı kullanın. Bundan kolay ne var yani? Veriler alınsın, siz lazım olanları kullanın. Bir form veya sorgu üzerinden alacaksınız verileri.. Tümünü almasının zararı olmaz. Kaldı ki verileri bir sorgu üzerinden kodla alırsınız, o zaman ne isterseniz onları alır. Bu arada kodlar şöyle:


Dim Klasor As String
Klasor = CurrentProject.Path & "\ExcelDosyası Adı.xls"
DoCmd.TransferSpreadsheet acImport, 8, "EklenecekTabloadı", Klasor, True, "b1:d10"

Bu örnek kodlarla b1 ile d10 hücreleri arasındaki hücrelerdeki veriler alınır.


Mesela benim bir örneğimde şöyle:
DoCmd.TransferSpreadsheet acImport, 8, "mdsoft_data", Klasor, True, "A1:AO65500"

Tabii kodlarda, Excel dosyasının yolu, Access dosyasının bulunduğu klasör olarak düşünülmüş, o yüzden
Klasor = CurrentProject.Path & "\ExcelDosyası Adı.xls"
şeklinde yol tanımlanmıştır. Siz klasör= "c:\deneme" gibi yolu tanımlarsınız, Excel dosyası nerdeyse...

Kolay gelsin..
18/11/2008, 09:55

adnan

Merhaba;

Sn. mehmetdemiral tavsiyeniz ve örnek kodlar için teşekkürederim. Elinize sağlık.

Selamlar.