Konu Araçları | Konu Seçenekleri | Gösterim Stili
Tarih
29/04/2019 22:59
Konu Sahibi
yücel üzülmez
Yorumlar
13
Okunma
373
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy
yücel üzülmez

yücel üzülmez

Üye
103326
yü.... üz....
 40
 3
 15
 24/03/2019
0
 Zonguldak
 
 Ofis 2019 32 Bit
 26/05/2019,10:11
Çözüldü 
Haliliyas Hocam iyi akşamlar sizin vermiş olduğunuz örneğe göre çalışmama ve öğrenmeye devam ediyorum fakat hala bazı şeyleri kavrayamadım.
Size göndermiş olduğum örnekte makine çalışma saatlerini basit bir şekilde nasıl toplarım. Form tasarımından metin olarak seçtim saati örneğin 45:00 şeklinde yazabiliyorum ama topla dediğim zaman 45:0012:0015:00 gibi metin olarak yan yana yazıyor bu problemi nasıl aşabilirim?
Şöyle birşey denedim ama olmadı, yardımınız için şimdiden teşekkürler.

Private Sub top_yard_mak_cal_sa_Click()

If IsDate(Me.yard1_cal_sa) And IsDate(Me.yard2_cal_sa) And IsDate(Me.yard3_cal_sa) Then

Me.top_yard_mak_cal_sa = [Me.yard1_cal_sa] + [Me.yard2_cal_sa] + [Me.yard3_cal_sa]

End If

End Sub



halily

halily

Uzman
65596
Ha....
 26
 1.155
 30/07/2014
209
 -
 
 Ofis 2019 64 Bit
 Bugün,11:45
mesajınız sorular bölümüne taşınmıştır
çalışmanızın son halini ekleyip; hangi formda, hangi butona basınca ne olmalı bu gibi ayrıntıları da belirtirseniz sorunu anlamak ve çözmek çok daha kolay olur.



...........
halily

halily

Uzman
65596
Ha....
 26
 1.155
 30/07/2014
209
 -
 
 Ofis 2019 64 Bit
 Bugün,11:45
eğer değerler metin türündeyse ve saat:dakika formatındaysa sşağıdaki kod işinize yarayabilir.

Visual Basic Code
1
2
3
4
5
6
7
Private Sub top_yard_mak_cal_sa_Click()

If IsDate(Me.yard1_cal_sa) And IsDate(Me.yard2_cal_sa) And IsDate(Me.yard3_cal_sa) Then
Me.top_yard_mak_cal_sa =format(CDate([Me.yard1_cal_sa]),'hh:nn') + format(CDate([Me.yard2_cal_sa]),'hh:nn')+format(CDate([Me.yard3_cal_sa]),'hh:nn')
End If

End Sub


Asıl çalışan aşağıdaki kodlar
önce 2 fonksiyon tanımlıyoruz
bu fonksiyon metin kutularındaki değerleri alıp dakikaya çevirir

Visual Basic Code
1
2
3
4
5
6
7
8
Function SaatDkCevir(Metin As String) As Double

 NoktaYer = InStr(1, Metin, ":") ' intstr() fonksiyonu aranan değerin yerini gösterir : noktanın yerini bulup saat ve dakikaya ayırmak için kullanacağız
 ZmnSaatdk = 60 * CLng(Mid(Metin, 1, NoktaYer - 1)) 'saati dakikaya çevirdik 
 ZmnDakika = CLng(Mid(Metin, NoktaYer + 1))
SaatDkCevir = ZmnSaatdk + ZmnDakika ' tek bir metin kutusu içintoplam dakikatı hesapladık 

End Function

aşağıdaki fonksiyonda 3 ayrı metin kutusundaki değerleri topladık

Visual Basic Code
1
2
3
4
5
6
7
8
Function ToplamYar() As String
If Not IsNull(Me.yard1_cal_sa) And Not IsNull(Me.yard2_cal_sa) And Not IsNull(Me.yard3_cal_sa) And _
              Me.yard1_cal_sa <> "" And Me.yard2_cal_sa <> "" And Me.yard3_cal_sa <> "" Then
SureTxt = SaatDkCevir(Me.yard1_cal_sa) + SaatDkCevir(Me.yard2_cal_sa) + SaatDkCevir(Me.yard3_cal_sa)  
ToplamYar = SureTxt \ 60 & ":" & SureTxt Mod 60
End If 

End Function

son olarak da sizin istediğiniz kısım metin kutusuna değer atadık

Visual Basic Code
Private Sub top_yard_mak_cal_sa_Click()
Me.top_yard_mak_cal_sa = ToplamYar
End Sub



yücel üzülmez

yücel üzülmez

Üye
103326
yü.... üz....
 40
 3
 15
 24/03/2019
0
 Zonguldak
 
 Ofis 2019 32 Bit
 26/05/2019,10:11
Şöyle basit bir program yapmaya çalışıyorum. İlk defa Access ile çalışıyorum.
Teknede yapılan seferlerin kaydını tutmak istiyorum. 
Bunun için bir form tasarımı yaptım fakat daha buton eklemeyi bilmiyorum (kaydı kaydet, sil, güncelleştir v.b.). 
Şuan için iki tarih arasındaki sefer saatini saat cinsinden veriyor. Yani 125 veya 45 saat gibi. 
Bu toplam sefer süresi fakat makineler ayrı ayrı çalıştırılabiliyor yada sefer saatinden daha önce devreye alınabiliyor, bunları metin kutusu içine yazdırıp toplamam gerekiyor. Aynı şey yardımcı makineler içinde geçerli. 
Aynı zamanda seferde yakılan yakıtı toplamam gerekiyor ama özelliği sayı olarak seçtiğimde 0,25 gibi yazılan bir değeri 0'a 2,5 gibi yazılan bir değeri 2'ye yuvarlayarak gösteriyor toplam da sonucu da yuvarlayarak gösteriyor bu da ikinci bir sorun.



...........
yücel üzülmez

yücel üzülmez

Üye
103326
yü.... üz....
 40
 3
 15
 24/03/2019
0
 Zonguldak
 
 Ofis 2019 32 Bit
 26/05/2019,10:11
(29/04/2019 23:30)haliliyas Adlı Kullanıcıdan Alıntı: eğer değerler metin türündeyse ve saat:dakika formatındaysa sşağıdaki kod işinize yarayabilir.

Visual Basic Code
1
2
3
4
5
6
7
Private Sub top_yard_mak_cal_sa_Click()

If IsDate(Me.yard1_cal_sa) And IsDate(Me.yard2_cal_sa) And IsDate(Me.yard3_cal_sa) Then
Me.top_yard_mak_cal_sa =format(CDate([Me.yard1_cal_sa]),'hh:nn') + format(CDate([Me.yard2_cal_sa]),'hh:nn')+format(CDate([Me.yard3_cal_sa]),'hh:nn')
End If

End Sub


Bu kodu kullanınca syntax error alıyorum



halily

halily

Uzman
65596
Ha....
 26
 1.155
 30/07/2014
209
 -
 
 Ofis 2019 64 Bit
 Bugün,11:45
[Resim: do.php?imgf=aede4e61e3241.jpg]



...........

Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Çözüldü Metin Ve Rakamlardan Seri Numarası Üretme Yunus Bozkurt 9 188 13/06/2019, 21:13
Son Yorum: halily
Çözüldü Metin Tipinde Ayarlanmış Sürelerle İşlemlerde Toplama Sorunu yücel üzülmez 9 392 08/05/2019, 23:09
Son Yorum: halily
Çözüldü İlişkisiz Form Da Listenin Filtrelenen Alanını İlişkisiz Metin Kutusu İle Update ask200075 4 119 29/04/2019, 11:27
Son Yorum: ask200075
Çözüldü Metin Kutusu İstenildiği Zaman Okunur, İstediğim Zaman Yazılır Olsun eraslan 6 201 28/04/2019, 14:39
Son Yorum: ozanakkaya
Çözüldü Metin Kutusuna Girilen Veriye Göre Veri Çağırma fascioğlu 9 599 14/03/2019, 14:50
Son Yorum: programmer67

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2019 MyBB Group.