• DİKKAT

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

Metin şeklindeki süreyi toplam saniyeye çevirmek

mersilen

Destek Ekibi
Destek Ekibi
Katılım
31 Aralık 2009
Mesajlar
1,105
Excel Vers. ve Dili
excel 2007 türkçe
Excel Vers. ve Dili Ofis 2003
Herkese iyi çalışmalar
Metin şeklindeki süreyi toplam saniyeye çevirebiir miyiz?

1s 14sn
18dk 12sn
1s 20dk
19dk 21sn
1s 19dk 8sn
1s 16dk 55sn
18dk
 

Ekli dosyalar

İsteğiniz bu şekilde yapılan bir hesaplama olabilir mi?
 

Ekli dosyalar

Selam
cevabınız için teşekkürler, yalnız
satır satır hesaplaması lazım
dizi formülü değilde makro ile olursa daha iyi olur
 
kod:

Kod:
Sub aktar()
sut1 = 2
sut2 = 8
For i = 2 To Cells(Rows.Count, sut1).End(3).Row
hucre = Cells(i, sut1).Value
d1 = Split(hucre, " ")
a = 0
For j = 0 To UBound(d1)
If Right(d1(j), 1) = "s" Then
a = a + (Mid(d1(j), 1, Len(d1(j)) - 1) * 1) * 60 * 60
End If
If Right(d1(j), 2) = "dk" Then
a = a + Mid(d1(j), 1, Len(d1(j)) - 2) * 60
End If
If Right(d1(j), 2) = "sn" Then
a = a + Mid(d1(j), 1, Len(d1(j)) - 2) * 1
End If
Cells(i, sut2).Value = a
Next j
Next
MsgBox "işlem tamam"
End Sub
 
Son düzenleme:
ALternatif veriler B sütunda varsayıldı. Sonuçlar H sütüna yazılacak.

C#:
Sub saniye80()
For i = 1 To Cells(Rows.Count, 2).End(xlUp).Row
s = Split(Cells(i, 2), " ")
sure = Empty
    For a = 0 To UBound(s)
        r = Empty: y = Empty
        For b = 1 To Len(s(a))
            If IsNumeric(Mid(s(a), b, 1)) Then
            r = r & Mid(s(a), b, 1)
            Else
            y = y & Mid(s(a), b, 1)
            End If
        Next
        If y = "s" Then r = r * 60 * 60
        If y = "dk" Then r = r * 60
        sure = sure + r
    Next
    Cells(i, 8) = sure & " Sn"
Next
MsgBox "İşlem Tamam", vbInformation + vbMsgBoxRtlReading, "İşlem Tamam"
End Sub
 
Herkese teşekkürer
kodlar çalışıyor
 
Alternatif..
PHP:
Sub Emre()
    Dim topla#, i&, a As Byte, s
    For i = 2 To Cells(Rows.Count, "B").End(3).Row
        s = Split(Cells(i, "B").Value, " ")
        For a = 0 To UBound(s)
            If InStr(1, s(a), "sn") > 0 Then
                topla = topla + Val(s(a))
            ElseIf InStr(1, s(a), "dk") > 0 Then
                topla = topla + (Val(s(a)) * 60)
            Else
                topla = topla + (Val(s(a)) * 3600)
            End If
        Next a
        Cells(i, "I").Value = topla
        topla = Empty
    Next i
    s = "": topla = Empty: i = Empty: a = Empty
    MsgBox "İşlem Tamam", vbInformation, "Www.ExcelArsivi.Com"
End Sub
 
Geri
Üst