Skip to main content

AccessTr.neT


Karışık Ölçüt Yardımı

Karışık Ölçüt Yardımı

#7
(14/10/2024, 18:21)atoykan yazdı:
(13/10/2024, 14:12)andarc yazdı: Kullanmam gereken formül;
bir önceki ölçüm tarihinde alınan değer - son tarihte alınan ölçüm değeri / aradaki yıl
2000 yılında 10mm - 2005 yılında 9,5mm ölçüldüğünü varsayalım arada 5 sene var formül bana 0,5/5= sonucunu vermeli. 2006 ile 6 ya bölecek mesela.

Örneğin 2000 yılı, 2005 ve 2006 yılları için veri var demişsiniz. 2005 kayıdı için yine 2006 mı baz alınacak, 2010 veya 2024 yılları için kayıt varsa örneğin 2005 için yine bu yıllar mı baz alınacak? Net açıklayın diye belirtiyoruz ama verdiğiniz cevaplar hep muğlak. Sizin tercihiniz, soru da sorun da sizin.

Atoykan hocam Berduş hocama yazdığım cevapta;
"ilk tarihin yanındaki değerden, son tarihte alınan değeri çıkarıp, aradaki yıla bölebilmem gerekiyor." diye açık yazdığımı düşünüyordum ben. Tarihleri ben örnek olsun diye yazdım en baştada. ilk tarih ve son tarih baz alınacak şekilde olacak.
"ilk tarih en erken tarih yazılan sütunun yanındaki değer"
"son tarih 2005 ise o tarihin yanına yazılan sütundaki değeri çıkarıp aradaki yıl farkı 5 olduğu için 5 e bölecek."
"Ama 2024 te ölçüm yazıldıysa daha güncel tarih son tarih olacağı için bu sefer o tarihin yanına yazılan sütundaki değeri çıkarıp 24 e bölünecek." gibi. Daha ne kadar açıklayabilirim bilmiyorum.
Cevapla
#8
anladığım kadarıyla aşağıdaki gibi bir yapı işinize yarayacaktır
1 - Frm_ekipman formuna aşağıdaki yordamı ekleyin
Function xSonuc()
xSonuc = ""
Set rsA = Me.tbl_kalinlik_alt_formu.Form.Recordset.Clone

If rsA.RecordCount > 1 Then
rsA.MoveFirst: xYilSon = Year(rsA(2)): xDgr1 = rsA(3)
rsA.MoveLast: xYilOnceki = Year(rsA(2)): xDgr2 = rsA(3)
xSonuc = (xDgr1 - xDgr2) / (xYilSon - xYilOnceki)
End If
End Function
2 - form geçerli olduğunda yordamına aşağıdaki kodu ekleyin
kh_shell = xSonuc
dilerim işinize yarar.
Cevapla
#9
not: altformdaki verilerin tarih sırasına göre geldiği varsayılmıştır
Not2: eğer altformdaki veride değişiklik olursa değişiklik hemen yansımaz
Cevapla
#10
(14/10/2024, 20:31)berduş yazdı: not: altformdaki verilerin tarih sırasına göre geldiği varsayılmıştır
Not2: eğer altformdaki veride değişiklik olursa değişiklik hemen yansımaz

Berduş hocam verdiğiniz kod tam olarak işe yarıyor.
formdaki veriler dediğiniz gibi tarih sırasına göre ekleniyor. Bahsettiğiniz değişiklikler form bir sonraki açılışındada yansısa problem değil.
not olarak;
Private Sub Form_Current()
kh_shell = Format(xSonuc, "0.000")
End Sub

şeklinde kodu değiştirdim bazı hesaplamalarda virgülden sonra 10 basamak kadar çıkabildi. Virgülden sonra 3 basamakla sınırlandırdım bu şekilde.
Yardımınız için çok teşekkür ederim.
Cevapla
#11
rica ederim)
iyi çalışmalar
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task