AccessTr.neT
Metin Tipinde Ayarlanmış Sürelerle İşlemlerde Toplama Sorunu - 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ığı: Metin Tipinde Ayarlanmış Sürelerle İşlemlerde Toplama Sorunu (/konu-metin-tipinde-ayarlanmis-surelerle-islemlerde-toplama-sorunu.html)

Sayfalar: 1 2


Metin Tipinde Ayarlanmış Sürelerle İşlemlerde Toplama Sorunu - yücel üzülmez - 02/05/2019

Arkadaşlar bir teknede toplam sefer süresini, makine çalışma saatlerini, toplam yakıt miktarını ve yardımcı makine çalışma saatlerini takip edebileceğim bir çalışma yapmaya çalışıyorum aynı zamanda bunu yapmaya çalışırken Access öğrenmeyi amaçlıyorum. Haliliyas hocamın sayesinde belli bir seviyeye getirmeyi başardım. Visual Basic olayına tamamen yabancıyım. Şuan sadece nereden nereye ne ekleyebilirim onu keşfetme seviyesindeyim. 
Problememi gelince sefer ile ilgili bilgileri girebileceğim bir form oluşturdum ama bir sorgu yaptığımda metin şeklinde toplanmış saat bilgilerinin toplamını alamıyorum, ihtiyacım olan sorgu ile toplam sefer süresini güncel olarak görmek, bunun yanında yakılan yakıtı da takip etmek, aylık kaç saat sefer yapmışım, ne kadar yakıt yakmışım, yılllık kaç saat sefer yapmışım ne kadar yakıt yakmışım ve ilerleyen dönem de saatte ne kadar ortalama yakıt yakıyorum gibi bilgileri takip etmek istiyorum. Becerebilirsem örnek dosyada ekleyeceğim...


Cvp: Metin Tipinde Ayarlanmış Sürelerle İşlemlerde Toplama Sorunu - berduş - 02/05/2019

Önce çalışmanıza 1 modül ekleyin
sonra Aşağıdaki Fonksiyonları Module Ekleyin
Function ToplamYar(xMetin As String) As Double
Dim Metin() As String
Dim xZaman() As String
Metin = Split(xMetin, ",")
For x = LBound(Metin) To UBound(Metin)
txtmetin = Metin(x)
'__________kontrol
xVarmi = InStr(1, txtmetin, ":", 1)
sayisalmi = IsNumeric(Replace(txtmetin, ":", ""))
'__________________________

If xVarmi < 1 Or sayisalmi = False Then GoTo 10
'_________________________________________
xZaman = Split(txtmetin, ":")
If IsNumeric(xZaman(0)) Then ZmnSaatdk = 60 * CLng(xZaman(0)) Else ZmnSaatdk = 0
If IsNumeric(xZaman(1)) Then ZmnDakika = CLng(xZaman(1)) Else ZmnDakika = 0
SaatDkCevir = Nz(ZmnSaatdk, 0) + Nz(ZmnDakika, 0)
ToplamYar = ToplamYar + SaatDkCevir
10
Next

End Function
aşağıdaki kod formda değişecek"top_yard_mak_cal_sa_Click" olayını aşağıdaki gibi yapın[/color]
Private Sub top_yard_mak_cal_sa_Click()
Dim xMetin As String
xMetin = Nz(Me.yard1_cal_sa, "") & "," & Nz(Me.yard2_cal_sa, "") & "," & Nz(Me.yard3_cal_sa, "")
xMetin = CStr(xMetin)
'Metin = Split(xMetin, ",")

ZmnTop = ToplamYar(xMetin)
ZmnSaat = ZmnTop \ 60 '":" & ToplamYar(metin)mod 60
Zmndk = ZmnTop Mod 60
Me.top_yard_mak_cal_sa = ZmnSaat & ":" & Zmndk

End Sub
__________________________________________________________
Son olarak da bir sorgu oluşturup sorgunun Sql koduna aşağıdakileri yazın
SELECT sey_bil.s_nu, ToplamYar(CStr(Nz([sey_bil]![yard1_cal_sa],"") & "," & Nz([sey_bil]![yard2_cal_sa],"") & "," & Nz([sey_bil]![yard3_cal_sa],""))) AS Toplam, [Toplam]\60 & ":" & [Toplam] Mod 60 AS [Saat Dk]
FROM sey_bil;
önceki çalışmanızı kullanıp "top_yard_mak_cal_sa" hesabını sorgu üzerinden yaptırmaya çalıştım ama hata kontrolü yaptırmadım dolayısıyla saat alanlar "15:21" gibi  bir formatta olmalı dilerim çalışır)


Cvp: Metin Tipinde Ayarlanmış Sürelerle İşlemlerde Toplama Sorunu - yücel üzülmez - 02/05/2019

Hocam sağol göstermiş olduğun yol ile bir seviye daha ilerledim ama hala bazı aksaklıklar var sanırım, verdiğiniz kodu kullanarak top_sefer ve ana_mak_cal_sa bilgilerini de metin kutusu içinden alarak sorgu içinde toplanması gerekiyor. Uygulamamın örneğini eklemek istiyorum ama dosya ekleme olayını beceremedim.


Cvp: Metin Tipinde Ayarlanmış Sürelerle İşlemlerde Toplama Sorunu - berduş - 03/05/2019

"yeni cevap" butonuna bastığınızda yeni bir sayfaya yönlendiriliyorsunuz o sayfada dosya ekleme var
siz de çıkmıyor mu?
[Resim: do.php?imgf=0d2f24a0506f1.jpg]


Cvp: Metin Tipinde Ayarlanmış Sürelerle İşlemlerde Toplama Sorunu - yücel üzülmez - 03/05/2019

Teşekkürler hocam ben hep hızlı cevap alanını kullanıyormuşum  Ozur Fur


Cvp: Metin Tipinde Ayarlanmış Sürelerle İşlemlerde Toplama Sorunu - yücel üzülmez - 03/05/2019

Hocam son halini ekledim, biraz daha ilerledim sayenizde.