DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Kolay gelsin,
Userformda textbox a 0530 yazdım, değiştir buttonuna tıkladım 0530 değeri A1 hücresine nasıl 05:30 olarak aktarılabilir ?
Yardımlarınız için teşekkürler.
Option Explicit
Private Sub CommandButton1_Click()
Dim ts
ts = TextBox1.Value
If Len(ts) = 3 Then
ts = TimeSerial(Left(ts, 1), Right(ts, 2), 0)
ElseIf Len(ts) = 4 Then
ts = TimeSerial(Left(ts, 2), Right(ts, 2), 0)
End If
Range("A1") = ts
Range("A1").NumberFormat = "h:mm"
End Sub
Üstadım teşekkürler, şunu nasıl yaparız hiç userformle uğraşmadan.
A1 e 530 B1 e 830 yazdım çıkartma yaptım ( bu arada 530 ve 830 saatleri simgelemekte ) C1 e 300 yazdı bunu dakikaya nasıl dönüştürebilirim. Birde şu var A1 e bazen 2330 yazıyorum işlem gece 0200 de bitiyor ama 0200 2330 dan küçük olduğu için aradaki işlem/saati hesaplayamıyorum. İlginiz için çok teşekkür ederim.
[s]:dd
türkçe
=METNEÇEVİR(B1-A1;"[s]:dd")*1
ingilizce
=TEXT(B1-A1;"[h]:mm")*1
ingilizce derken yine metneçavir demişsiniz ben mi yanlı görüyorum hocam. O kısmı nereye yazmam gerek. Anlatamamışımdır diye birkez daha yazmamda bir sakınca yoktur inşallah hocam. Ben
A1 hücresine 530
B1 hücresine 830 yazdığımda C1 hücresine ( =B1-A1 ) yaptıktan sonra C1 e yansıyacak olan 300 nasıl 03:00 otomatik yapabilirim. Yada dakikaya çevirmek için =(b1-a1)*0,6 yapsam yeterlimidir. Tam saatlerde sıkıntı yapmıyor da
mesela a1 530 b1 940 olunca C1 e 410 yansıyor *0,6 yapınca 246dk oluyor, yani hata 246 cıkmaması gerek. Saolun hocam tekrardan...
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A:B")) Is Nothing Then Exit Sub
If Len(Target.Value) = 3 Then
Target.Value = TimeSerial(Left(Target.Value, 1), Right(Target.Value, 2), 0)
ElseIf Len(Target.Value) = 4 Then
Target.Value = TimeSerial(Left(Target.Value, 2), Right(Target.Value, 2), 0)
End If
Target.NumberFormat = "h:mm"
End Sub
Merhaba
üstteki mesajı güncelledim
Sayfanın kod bölümüne
Bu kodu kopyalayın ve deneyinKod:Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("A:B")) Is Nothing Then Exit Sub If Len(Target.Value) = 3 Then Target.Value = TimeSerial(Left(Target.Value, 1), Right(Target.Value, 2), 0) ElseIf Len(Target.Value) = 4 Then Target.Value = TimeSerial(Left(Target.Value, 2), Right(Target.Value, 2), 0) End If Target.NumberFormat = "h:mm" End Sub
Üstadım ellerine sağlık şık oldu şimdi bişeye benzedi. Yalnız ufak bir sorunu tetikledi sebebini bulamadım, ekteki dosyaya bakabilirmisiniz.
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Intersect(Target, Range("D:D,H:H")) Is Nothing Then Exit Sub
If IsNumeric(Target.Value) = False Or Target = "" Then Exit Sub
If Len(Target.Value) = 3 Then
Target.Value = TimeSerial(Left(Target.Value, 1), Right(Target.Value, 2), 0)
ElseIf Len(Target.Value) = 4 Then
Target.Value = TimeSerial(Left(Target.Value, 2), Right(Target.Value, 2), 0)
End If
Target.NumberFormat = "h:mm"
End Sub