• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Makroda Saati Dakikaya çevirme

emrebengul

Altın Üye
Katılım
5 Aralık 2015
Mesajlar
304
Excel Vers. ve Dili
Excel Vers. ve Dili Ofis 2019 TR 32 Bit
Herkese merhabalar,

başlangıç ve bitiş saatlerini textboxlara girdiğimde diğer textboxta bitişten başlangıcı çıkararak dakika olarak çalışma süresi hesaplansın istiyorum. Örnek dosyayı da eke bırakıyorum.

Hep excel formül düzeyinde gördüm makroda göremedim. Yardımcı olursanız sevinirim.

Çok teşekkürler.
 

Ekli dosyalar

Son düzenleme:
Merhaba.

Başka şekillerde de olabilir sanırım ama aklıma ilk gelen böyle oldu.
Tarih dikkate alınmadığını hatırlatırım. Bitiş saati başlangıçtan küçük ise, bitiş saatinin bir sonraki güne ait olduğu varsayılır.
VBA ekranında, sol taraftaki UserForm'a sağ tıklayıp "View Code" yi seçin, ağdaki boş alana aşağıdaki kod blokunu yapıştırın.

TextBox1 ve TextBox2'ye 22:30 gibi 5 karakterli saat verisi yazarsanız
(önce hangisini yazdığınız önemli değil) TextBox3'te istenilen sonuç görüntülenir.
.
Kod:
[B]Private Sub TextBox1_Change()[/B]
If Len(TextBox1) = 5 And Len(TextBox2) = 5 Then
    g = 0
    TextBox1 = Format(TextBox1, "hh:mm")
    TextBox2 = Format(TextBox2, "hh:mm")
    If CDate(TextBox1) > CDate(TextBox2) Then g = 1
    TextBox3 = Format(CDate(TextBox2) + g - CDate(TextBox1), "hh:mm")
Else
    TextBox3 = ""
End If
[B]End Sub[/B]

[B]Private Sub TextBox2_Change()[/B]
If Len(TextBox1) = 5 And Len(TextBox2) = 5 Then
    g = 0
    TextBox1 = Format(TextBox1, "hh:mm")
    TextBox2 = Format(TextBox2, "hh:mm")
    If CDate(TextBox1) > CDate(TextBox2) Then g = 1
    TextBox3 = Format(CDate(TextBox2) + g - CDate(TextBox1), "hh:mm")
Else
    TextBox3 = ""
End If
[B]End Sub[/B]
 
ömer hocam çok teşekkür ederim ancak direkt saat olarak görünüyor sonuç.
ben o çalışma süresinin dakikaya çevrilmesini istiyorum
Bknz: 04:15 olarak görünen çalışma süresinin 255 dk gibi
 
Aşağıdaki gibi deneyin...
Kod:
[SIZE=2]TextBox3 = DateDiff("n", TextBox2, TextBox1)[/SIZE]
.
 
zeki hocam oldu çok teşekkürler :)
 
değerli hocalarım
bu çalışma süresini saatini excele kaydetmek isterken

activecell.offset(0,23).value = textbox1.value
activecell.offset(0,24).value = textbox2.value
activecell.offset(0,25).value = textbox3.value
olarak kaydet dediğimde hata veriyor.

.value değil text olarak kaydettiğimde de aynı hata geliyor. Ne yapabilirim?
 
değerli hocalarım
bu çalışma süresini saatini excele kaydetmek isterken

activecell.offset(0,23).value = textbox1.value
activecell.offset(0,24).value = textbox2.value
activecell.offset(0,25).value = textbox3.value
olarak kaydet dediğimde hata veriyor.

.value değil text olarak kaydettiğimde de aynı hata geliyor. Ne yapabilirim?
Ya textboxlardan en az 1 tanesi yok,yada verinin aktarılacağı hücre kilitli ve korumalı.:cool:
 
run time error 13 type mismatch hatası veriyor hocam ne yapabilirim düzeltmek için
 
run time error 13 type mismatch hatası veriyor hocam ne yapabilirim düzeltmek için

Örnek bir dosya eklerseniz,daha çabuk sonuç alabilirsiniz.Bununla ilgilenen arkadaşlar olacaktır.:cool:
 
Geri
Üst