Artan DeĞer

Katılım
16 Kasım 2005
Mesajlar
1,090
Excel Vers. ve Dili
Access 2002
Bir tabloda,bir alan sayı olarak tanımlanmış olsun.
Bu tablodan bir verisayfası görünümünde form oluşturmuş olalım.
Bu alana girdiğimizde önceki değeri artıran bir kod yazmak istiyorum.

şu kod çalışmıyor malesef..;

'------------------------KOD---------------------------------------
If (Me.SIRA_NO = "") Then
Me.SIRA_NO.Value = "1"
Else
Me.SIRA_NO.Value = Me.SIRA_NO + 1
End If

'----------------------BİTTİ-------------------------------------------
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın karaayhan,

Kafanız kaıştı yine herhalde.

Metin tanımlı bir alanı 1 artırmak imkansız tür dğişimi yapmadan. O zaman önce metin türünü sayıya çevirip bir artırmanız ondan sonra da tekrar metin türüne çevirmeniz gerekir.

Me.SIRA_NO.Value = Str(Val(Me.SIRA_NO) + 1)

İyi çalışmalar:)
 
Katılım
16 Kasım 2005
Mesajlar
1,090
Excel Vers. ve Dili
Access 2002
Sayın Modalı,

SIRA_NO alanı sayı tanımlı ama yinede olmuyor, sizin kod da çalışmadı.
otomatik tanımlı alan yapamıyorum çünkü her bir kayıtla bire-çok ilişkili bir tablo bu aslında o yüzden her kişiye ait ayrı bir ÜRÜN formu var altform olarak çalışmakta yani

o yüzdendirki SIRA_NO alanına girildiğinde bir önceki değer ne ise bir fazlasını yazmasını istiyorum.


kolay gelsin, örnek ekte
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın karaayhan,

Size ne oldu?

Kimlik adında bir alanınız var tabloda, forma eklemiyorsunuz ve alan sayı olarak tanımlı ve bu alanı boş geçemiyorsunuz. Önce bu noktada çalışmaz kodlarınız. Otomatik artan sayıyla değiştirdim tanımı.

Sonra sırano boş ise 1 le eşitlemeye çalışıyorsunuz bu alan sayı tanımlı ve " " leri kullanıyorsunuz. Bunlar ancak metin alanları ile kullanılırlar. Entere bastığınız an daha kayıt gerçekleşmediğinden alan hep 1 e eşitleniyor.

Sihirli bir DLast fonksiyonu var. Onu kullandım ve sorun çözüldü.

İyi çalışmalar:hey:
 
Katılım
16 Kasım 2005
Mesajlar
1,090
Excel Vers. ve Dili
Access 2002
Valla yazdıklarınızda haklısınız okuyunca kendime bende inanamıyorum basit hatalar yüzünden:$

Çok güzel olmuş örnek ellerinize sağlık, (ben fonksiyonların ne işe yaradıklarını çok iyi bildiğinizi söylemiş ve bu konuda bir destek istemiştim excel.web adına burada yayınlansın istemiştim, yanılmıyorsam sizde bir site önermiştiniz başka bir soruya ancak site ingilizce )
böyle örnekler sayesinde hangi fonksiyon hangi işe yarıyor yavaş yavaş öğreniyoruz.

Teşekkürler ,

Yalnız bir sorun var, örnekte kayıtları birer birer artırıyor ancak yanlışlıkla da olsa bir önceki kayıtlara tıklanırsa yada oraya girilirse o değeri de bir artırıyor.
sanırım bu sorun çıkartabilir, fikrinizi bekliyorum....
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın karaayhan

Kodları şu şekilde değiştirin:

Kod:
Private Sub SIRA_NO_Enter()
If IsNull(DLast("[SIRA NO]", "ÜRÜN")) Then
Me.SIRA_NO.Value = 1
Else
    If IsNull([SIRA NO]) Then
    [SIRA NO].Value = DLast("[SIRA NO]", "ÜRÜN") + 1
    Else
    End If
End If
End Sub
Eklediğim nokta SIRA NO boş ise son sayıyı bir artırıp ekle.

İyi çalışmalar:)
 
Katılım
16 Kasım 2005
Mesajlar
1,090
Excel Vers. ve Dili
Access 2002
sayın modalı,

teşekkürler bu gün vakit bulup yazamadım, aynı kodu yazmıştım ve sorunu çözmüştüm. Yinede teşekkürler ..


şu ana acil olan veri karşılaştırması ile ilgili sorum benim için.

birde;

Konular içi içe olacak ama siz biliyorsunuz diye affınıza sığınarak burdan hatırlatma yapmak istedim.
miatlı evrak ile ilgili sorumda hafta seçildiğinde süzme yapmıyordu hani diğer aya kayarsa miatlı evraklar diye söylemiştiniz onla ilgili bir gelişme var mı acaba.

http://www.excel.web.tr/showthread.php?t=20986&highlight=permission+denied

yardım ve ilginize binlerce kez teşekkür ederim...

Allah size forumdan eksik etmesin..:)
 
Son düzenleme:
Üst