Bir Tablodan Başka Tabloya Dlookup İle Veri Çekmek

1 2
09/05/2022, 16:51

kesekci

DLOOKUP konusunda arama yapıp başlıkları okudum ama Access'in kod kısmına tamamen fransız olduğum için hiçbir şey anlamadım desem yeridir. O yüzden lütfen kusura bakmayın.

Access'te iki tablom var. İlk tablodaki sütunlarım "ürün adı - barkod no". İkinci tablomda da "barkod no" var. İkinci tablodaki barkod no'nun yanına o barkod numarasını hangi ürüne verdiğimi getirmesini istiyorum. Yardımcı olursanız çok sevinirim. Şimdiden teşekkürler.

Not : Dediğim gibi access'te hiç kod veya formül ile çalışmadım. Sadece basit tablolar ve buna bağlı basit formlar oluşturabiliyorum. O yüzden çözümü anlatırken neyi nereye yazacağımı da belirtirseniz müteşekkir olurum.

Hatta şöyle bir ekleme yapayım. İkinci tablodaki barkod numaralarının yanında o barkod no herhangi bir ürüne atanmış mı onu görmek için checkbox koydum. Dlookup ile yanına ürün geliyorsa checkbox otomatik işaretlensin diyebilir miyiz? Yani ben ilk tablomdaki ürün listesinin yanına barkodunu yazdığımda bu tabloda manuel bir güncelleme yapmam gerekmesin istiyorum.
09/05/2022, 17:03

berduş

1 - konularınızı açarken ilgili yere açmaya dikkat edelim, uygun yere açılmayan konular dikkatten kaçabilir
konunuzu dersler başlığı altına açmışsınız, soru olarak görülmediğinden ilgilenilmeyebilirdi
2 - sorularınıza içinde kayıtlar olan örnek çalışmanızı mutlaka ekleyin
09/05/2022, 17:11

kesekci

(09/05/2022, 17:03)berduş yazdı: 1 - konularınızı açarken ilgili yere açmaya dikkat edelim, uygun yere açılmayan konular dikkatten kaçabilir
konunuzu dersler başlığı altına açmışsınız, soru olarak görülmediğinden ilgilenilmeyebilirdi
2 - sorularınıza içinde kayıtlar olan örnek çalışmanızı mutlaka ekleyin

Uyarı için teşekkür ederim. Örnek dosya ekledim.
09/05/2022, 21:45

berduş

1. ve 2. tablo yerine tablo adlarını vererek isteğinizi açıklar mısınız?
Dlookup yerine join sorgusuyla isteğiniz yapılabilir gibi
aşağıdaki kodu sorgu oluşturma penceresindeki Sql görünümü penceresine ekleyip dener misiniz?
SELECT barkodlar.barkod, [barkod listesi].ID, [barkod listesi].ürün, barkodlar.[kullanıldı mı]
FROM [barkod listesi] RIGHT JOIN barkodlar ON [barkod listesi].barkod = barkodlar.barkod;
10/05/2022, 09:21

atoykan

Sayın @kesekci

Veritabanı mantığını tam anlamamışsınız. Veritabanındaki tablolar kayıtlartın tutulması amacı ile kullanılır daha önce de söyledim üzerinde işlem yapılmaz, yapmak istedikleriniz basit bir form üzerinden yapılarak tablolara kaydedilmesi sağlanır. Bir tabloda kayıtlı bilgi diğer bir tabloya da kaydedilmez. Bu gerekiz bir alan israfıdır. Bir tablodaki bilgi diğer tabloda da işinize yarayacak ise bu tablolar arasında ilişki kurar sorgular ile bu bilgileri eşleştirir bir bütün olarak raporlarsınız. Veritabanı oluşturmadan önce amacı belirler, bu çerçevede ihtiyaç duyulan tabloları düzenler, formları hazırlar akabinde planlamanız çerçevesinde gerekli kodlar ve sorguları düzenlersiniz. Çalışmanızda neyi ne için yapmak istediğinizi açıklarsanız, nasıl bir yol izleyebileceğiniz noktasında tavsiye verebilir, takıldığınız yerlerde yardımcı olmaya çalışabiliriz.
10/05/2022, 09:34

kesekci

(10/05/2022, 09:21)atoykan yazdı: Sayın @kesekci

Veritabanı mantığını tam anlamamışsınız. Veritabanındaki tablolar kayıtlartın tutulması amacı ile kullanılır daha önce de söyledim üzerinde işlem yapılmaz, yapmak istedikleriniz basit bir form üzerinden yapılarak tablolara kaydedilmesi sağlanır. Bir tabloda kayıtlı bilgi diğer bir tabloya da kaydedilmez. Bu gerekiz bir alan israfıdır. Bir tablodaki bilgi diğer tabloda da işinize yarayacak ise bu tablolar arasında ilişki kurar sorgular ile bu bilgileri eşleştirir bir bütün olarak raporlarsınız. Veritabanı oluşturmadan önce amacı belirler, bu çerçevede ihtiyaç duyulan tabloları düzenler, formları hazırlar akabinde planlamanız çerçevesinde gerekli kodlar ve sorguları düzenlersiniz. Çalışmanızda neyi ne için yapmak istediğinizi açıklarsanız, nasıl bir yol izleyebileceğiniz noktasında tavsiye verebilir, takıldığınız yerlerde yardımcı olmaya çalışabiliriz.

cevabınız için çok teşekkür ederim atoykan. Access mantığına çok hakim olmadığım doğrudur. Yeni yeni çözmeye çalışıyorum. İşe başladığım firmada veriler hep bölük pörçük Excel tablolarında tutulmuş, onları hem toparlamaya hem de daha sağlıklı olacağını düşündüğüm için Access ortamına taşımaya çalışıyorum. Bunu yaparken de kullanım alışkanlıklarını da göze alıp işi zorlaştırmadan halletmeye gayret ediyorum.
Bu konudan örnek verecek olursam;
Elimizde bize tahsis edilen 500 adet ean-13 barkod var, bunların bir kısmı ürünlere atanmış, bir kısmı hala boşta. Bu 500 numaranın olduğu bir tablo oluşturdum. Herhangi bir ürüne atanmış olan barkodun yanındaki kullanıldı mı alanına da check atıyorum. bu tablomuz kenarda dursun.
Aynı şekilde bize tahsis edilen 500 adet upc-a barkodu var, aynı düzende bir tablo da bunun için var.
üçüncü bir tablomda ise bütün ürünlerin listesi ve her ürünün yanında ean-13 barkodu ve upc-a barkodu olmasını istiyorum. örneğin yeni bir ürün çıkardım piyasaya. ürünün adını son tabloma girdim, yanına da sıradaki barkod numaramı girdim. buraya o barkod numarasını girdikten sonra tekrar ilk tabloya git, yanındaki checkbox'ı işaretle işi olmasın diye de çözüm bulmaya çalışıyorum bir yandan. formlar, sorgular, raporlar vs epey karışıkmış access. excel'i yıllarca uğraşıp ancak iyi kötü çözebildim. bu daha karışık geldi bana.
Umarım meramımı anlatabilmişimdir. Lüzumsuz meşgul ettiysem hakkınızı helal edin.
1 2