AccessTr.neT
Değer Tanımlama Hk. - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html)
+--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Değer Tanımlama Hk. (/konu-deger-tanimlama-hk.html)



Değer Tanımlama Hk. - serkan1985 - 30/03/2020

Herkese merhaba,

Ekli uygulamada "liste_alt2" formunda bulunan "Time Completed" alanında tarih ve saat tek alandadır. Bu alandan saat dilimine göre aynı formda yeni bir metin kutusuna değer atamasını yapamadım. Örneğin saat kısmı 0032 ise yeni bir metin kutusuna "24-08" (24:00 ile 08:00 arasında olduğundan) gibi bir değer tanımlamak yapılabilir mi? Bunu günün 3 vardiyası şeklinde (08-16/16-24/24-08) yapılabilir ise yardımlarınızı rica ederim.


Cvp: Değer Tanımlama Hk. - berduş - 31/03/2020

Çalışmanızı maalesef inceleme imkanim olmadi ama aşağıdaki kod işinize yarayabilir
Function sonuc(Trh As Date) As String
X = CStr(Trh)
BasX = InStr(X, " ") + 1
y = TimeValue(CStr(Mid(X, BasX)))
If y >= TimeValue("16:00:00") Then sonuc = "16/00 var...." Else sonuc = "8/16 vardiyasi"
If y <= TimeValue("08:00:00") Then sonuc = "00:00/08:00 vardiyasi"
If err.number<>0 then  sonuc ="vardiya girilmemis"
End Function
fonksiyon, tarih ve saat arsında sadece boşluk olduğu varsayımına dayanarak tarih ve saat diye 2ye ayırıp işlem yapmaktadır


Cvp: Değer Tanımlama Hk. - serkan1985 - 31/03/2020

Halil bey evet tarih ve saat aynı sutunda aralarında boşluk var denedim ama yapamadım formun geçerli olduğu alana yazdım acaba yanlışmı uyguladım?


Cvp: Değer Tanımlama Hk. - berduş - 31/03/2020

aşağıdaki fonksiyonu bir modül oluşturup oraya ekleyeceksiniz
Function sonuc(Trh As String) As String
On Error Resume Next
X = CStr(Trh)
ZamanX = Right(X, 4)

y = TimeValue(CStr(Left(ZamanX, 2) & ":" & Right(ZamanX, 2) & ":00"))
If y >= TimeValue("16:00:00") Then sonuc = "16-24" Else sonuc = "8-16"
If y <= TimeValue("08:00:00") Then sonuc = "24-8"
If Err.Number <> 0 Then sonuc = "vardiya girilmemis"
End Function
sonrada fonksiyonu ihtiyaç duyduğunuz yerden çağıracaksınız ister form ister sorgu
ben forma eklediğim metin kutusundan çağırdım ama siz isterseniz formda kullandığın kayıt kaynağına da ekleyebilirsiniz
iyi çalışmalar


Cvp: Değer Tanımlama Hk. - serkan1985 - 31/03/2020

Halil bey şimdi anladım elinize sağlık deteğiniz için çok teşekkürler iyi çalışmalar +rep +rep