Sayın odin,
Talebinize yönelik olarak,sayın Celoyce tarafından paylaşılan kodlara küçük bir ekleme yapmak amacı ile,kendilerinin hoşgörüsüne sığınaraktan şu ilaveyi yapmak yerinde olacaktır.
Öncelikle,
Uygulamadaki form üzerinde olay yordamı yerine Katıştırılmış Makro kullanıldığı için,ilgili Alan1 adlı denetimi tasarım olarak açtırıp ÖZELLİKLER – OLAY sekmesindeki TIKLANDIĞINDA olay yordamı oluşturulmalı ve yazdığınız bu kodların bir üst satırına YENİ KAYIT satırı açtırılmalı ki,sonradan bu yeni kayıt üzerinde talep edilen Alan2’deki değeri Alan1’e aktarımı sağlanabilsin.
Ayrıca,
kod sayfasında ilk ikinci satırda OPTION EXPLICIT kod satırı olduğu için,A1 Değişken tanımlaması satırında hata verecektir,önceden bu tanımlama yapılmadığı gerekçesi ile.
Bu nedenle,sayın Celoyce;
ilgili kod,sizin yazdığınız şekli ile değerlendirildiğinde
DoCmd.GoToRecord , , acNewRec
dim A1
A1 = DMax("Alan2", "tablo1")
If IsNull(A1) Then A1 = 0
Me.Alan1 = A1
Ya da,bir diğer kullanım olarak,değişken ataması yapmaksızın direkt;
DoCmd.GoToRecord , , acNewRec
Me.Alan1 = Nz(DLast("Alan2", "Tablo1"), 0)
'ya da,
'Me.Alan1 = Nz(DMax("Alan2", "Tablo1"), 0)
'şeklinde de olabilir
benzeri de kullanılabilir.
Bilginize…iyi çalışmalar,saygılar.