4

Excel セルに (0D/1H/6) として書き込まれたターン アラウンド タイムを変換するにはどうすればよいですか。つまり、0 日 1 時間 6 分を別の Excel セルまたは隣接する Excel セルのみで分に変換します。変換を簡単にするためにそれを自動化したいと思います。ありがとう。

4

2 に答える 2

2

一部の文字列関数を使用して可能です。以下のコードは、指定した方法で書式設定された文字列を持つセル (この場合は A1) を指定して、分を計算します。

=VALUE(LEFT(A1;FIND("D/";A1)-1))*24*60 + VALUE(MID(A1;FIND("D/";A1)+2;FIND("H/";A1)-FIND("D/";A1)-2))*60 + VALUE(RIGHT(A1;LEN(A1)-FIND("H/";A1)-1))

たとえば、あなたの場合、「0D/1H/6」は66になります。

于 2013-01-08T13:53:30.863 に答える
0

Excelがネイティブに理解できるフォーマットだとは思わないので、これにはVBA式を使用します。

Alt+F11、挿入 -> モジュール & 追加

Public Function TOMINS(value As String) As Long
    Dim parts() As String: parts = Split(value, "/")
    If (UBound(parts) = 2) Then
        TOMINS = Val(parts(0)) * 1440
        TOMINS = TOMINS + Val(parts(1)) * 60
        TOMINS = TOMINS + Val(parts(2))
    End If
End Function

次に、値がA1にあり、B1に分が必要な場合は、B1にします =TOMINS(A1)

于 2013-01-08T13:28:12.487 に答える