Veri Doğrulama Başka Bir excel dosyasınan bilgi çekebilir mi?

Katılım
7 Aralık 2006
Mesajlar
19
Excel Vers. ve Dili
excel 2002 tr
Merhaba,

Veri Doğrulama ile aynı excel sayfasındaki bilgileri Listeleyebiliyoruz.

Ama diyelimki Benim Stok kartlarım Stok.xls dosyasında. Stok Hareketlerimde Hareket.xls de.

Ben stok hareketlerini girerken, Stok kodunu giriş yaptığım yer A sütunu diyelim. A sütunundayken istersem direkt kodu yazabileyim,

istersem Doğrulamadaki gibi yanda açılan butona basarak stok kartındaki (kapalıda olsa) Stok kartlarının isimlerini listelese,

ve ben seçimimi yaptığımda Stok kartından ürünün açıklamasını getirse!?

mümkün mü? Nasıl yapabiliriz?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Şöyle mümkün kapalı olan dosyalardaki verilerinizi mevcut dosyanıza formüllerle çekersiniz ve çektiğiniz sütunuda veri doğrulamada kullanırsınız.
 
Katılım
7 Aralık 2006
Mesajlar
19
Excel Vers. ve Dili
excel 2002 tr
Öncelikle yanıtınız için teşekkür ederim.

Peki,

kapalı olan dosyadaki bilgileri formüllerle herhangi bir sütüna yazdırmak yerine, ( bu mümkün değil, 'sebebi uzun )

hareket dosyam açılırken, stok kartlarını ve bilgilerini bir diziye okutup,

daha sonra hareket dosyasında stok kartı seçimi yaptığım sütunda (doğrulamadaki gibi) açılan liste penceresine yazdıramaz mıyım?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Elbette yapılabilir. Bu işlem için iki dosyanızında bir örneğini eklermisiniz. Birde veri sayısı kaç satırdır?
 
Katılım
7 Aralık 2006
Mesajlar
19
Excel Vers. ve Dili
excel 2002 tr
tahmin ediyorum bu script herkesin işine çok yarayacak!

Örnek Dosyalar ektedir. Çok teşekkür ederim.
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
Dosyalarınız ekte.

Sayfa1 ve Sayfa2'ye bakınız.

Yönetemler: Dış Veri Alma, Özet Tablo, Alan Tanımlama, Veri Doğrulama ve Düşeyara fonksiyonu.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Bende ADO ile veri alınan bir kod önereyim. Aşağıdaki kodu "Hareket.xls" isimli dosyanızın "sayfa2" isimli sayfasında çalıştırın. "StokKarti.xls" isimli dosyadan verileri alacaktır. Bu dosyanın C:\ altında olduğu kabul edilmiştir. Klasör yolunu kendinize göre değiştirirsiniz. İkinci sayfadaki verileride istediğiniz şekilde formülize edebilirsiniz.

Kod:
Sub verial()
Set baglanti = CreateObject("ADODB.Connection")
yol = "DRIVER={Microsoft Excel Driver (*.xls)};" & "DBQ=C:\StokKarti.xls"
baglanti.Open yol
Set rs = baglanti.Execute("[Sayfa1$a1:e65536]")
[a1].CopyFromRecordset rs
rs.Close
baglanti.Close
End Sub
 
Katılım
7 Aralık 2006
Mesajlar
19
Excel Vers. ve Dili
excel 2002 tr
Teşekkür ederim.

ADO Connection ile olur gibime geliyor! biraz üzerinde detay çalışmam gerekicek, son halini buraya atarım.

veya takıldığım bir konu olursa size yine dönerim.
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,712
Excel Vers. ve Dili
Excel 2019 Türkçe
Değerli arkadaşlar, ben de bu şu anda kapalı bir dosyadan veri alma ile ilgili bir çalışma ile uğraşıyorum. Dolayısıyla, Sayın leventm' in yukarıda verdiği kodlarda; dosya şifreli ise, nasıl bir ekleme yapmalıyım?

Şimdiden teşekkürler...

Not: Dosyayı iki kişi kullanıyoruz. Bu yüzden dosya açma şifresini sadece bu arkadaşla ile ben biliyorum.
 
Son düzenleme:

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Dosyayı açmadan yapılabilirmi bilmiyorum ama dosyayı açarak aşağıdaki gibi yapılabilir.

Kod:
Sub verial()
Application.ScreenUpdating = False
Workbooks.Open "C:\StokKarti.xls", Password:="1234", writerespassword:="1234"
Set s1 = Workbooks("StokKarti.xls").Sheets("sayfa1")
sonsat = s1.[a65536].End(3).Row
Workbooks("Hareket.xls").Activate
Range("a1:f" & sonsat) = s1.Range("a1:f" & sonsat).Value
Workbooks("StokKarti.xls").Close False
End Sub
 
Katılım
21 Eylül 2006
Mesajlar
91
Excel Vers. ve Dili
ver:2003 dil:ing
sn yurttaş

sn yurttaş,
sayfa 1 de a sutunundaki hücrelere tıklandığında hücrenin sağında veri süz ün çıkmasını nasıl yapıyoruz birde sayfa 2deki veri süz de tablo görünümünü nasıl çıkartıyoruz açıklarsanız sevinirim
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
sn yurttaş,
sayfa 1 de a sutunundaki hücrelere tıklandığında hücrenin sağında veri süz ün çıkmasını nasıl yapıyoruz birde sayfa 2deki veri süz de tablo görünümünü nasıl çıkartıyoruz açıklarsanız sevinirim

Excel Dersanesi'nden;

1. Data/Validation - Veri Doğrulama konusunu,

2. Pivot Table - Özet Tablo konusunu,

inceleyiniz.
 
Katılım
7 Aralık 2006
Mesajlar
19
Excel Vers. ve Dili
excel 2002 tr
Levent Bey

Bende ADO ile veri alınan bir kod önereyim. Aşağıdaki kodu "Hareket.xls" isimli dosyanızın "sayfa2" isimli sayfasında çalıştırın. "StokKarti.xls" isimli dosyadan verileri alacaktır. Bu dosyanın C:\ altında olduğu kabul edilmiştir. Klasör yolunu kendinize göre değiştirirsiniz. İkinci sayfadaki verileride istediğiniz şekilde formülize edebilirsiniz.

Kod:
Sub verial()
Set baglanti = CreateObject("ADODB.Connection")
yol = "DRIVER={Microsoft Excel Driver (*.xls)};" & "DBQ=C:\StokKarti.xls"
baglanti.Open yol
Set rs = baglanti.Execute("[Sayfa1$a1:e65536]")
[a1].CopyFromRecordset rs
rs.Close
baglanti.Close
End Sub


yukardaki metod başarılı bir şekilde bağlantıyı yapıyor ve Bilgileri alıyor.

Ama Diyelimki,

Ben Stok kartındaki Sütun başlıklarını( Cinsi, Açıklama, Birim) sildim. Ama hangi Column larda oldugunu biliyorum.

SQL sorgulama ile sadece tek bir kaydın bilgisini ismini birimini ve fiyatını okutabilir miyim?

Örneğin, "masa"

dosyayı açmadan bağlanıp masa kaydının fiyat bilgisini getirsin?

şimdiden teşekkür ederim.


Not: şu an yaptığım sistem rs.movenext komutuyla kayıtların üzerinde teker teker gezerek (Sequential okuyup )
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Çok teşekkürler sayın Levent Menteşoğlu.
 
Üst