- みんなの回答 (5)
- 専門家の回答
みんなの回答
- bunjii
- ベストアンサー率43% (3589/8249)
>1分7秒 のような表示形式にしたいと思っています。 秒以下の端数は四捨五入で良いでしょうか? また、処理時間は文字列として入力されていますか? 投稿処理が時間のシリアル値のときは直接計算できますが文字列として入力されているときは数値化する処理を必要としますのでお勧めできません。 Dさんの投稿処理がシリアル値で 0:17:00 と入力されている場合は次の数式で良いでしょう。 D5=B5/C5 → 0.001180556 → 1分42秒 D列の表示形式を [m]"分"ss"秒" とすれば目的に合うでしょう。
- mshr1962
- ベストアンサー率39% (7417/18945)
C5=17,D5=10なら =IF(D5=0,"",C5/D5/1440) C5="0:17:0",D5=10なら =IF(D5=0,"",C5/D5) で表示形式をユーザー定義で [m]分s秒 ※秒を常に2桁表示なら [m]分ss秒 ちなみに17分/10件なら答えは 1分7秒ではなく1分42秒ですね。
- m_and_dmp
- ベストアンサー率54% (987/1817)
No.2 です。 C5 についても、「数値で入力されているか文字列か」で式が違ってきます。うっかりしていました。 とりあえず、分も件もつけずに、数値として17, 10 と入力して実験してください。 うまくいったら、B5 の表示形式を 00"分" に、C5 の表示形式を 00"件" にします。 =INT(B5/C5)&"分"&(MOD(B5,C5)*6)&"秒"
- m_and_dmp
- ベストアンサー率54% (987/1817)
B5 に17 が入力されていて、表示形式で 17 分と表示している場合は、 「1件当たり」のセルに次の式を記述します。 =INT(B5/C5)&"分"&(MOD(B5,C5)*6)&"秒" B5 に文字列として「17分」と入力されている場合は、式をつぎのようにします。 =INT(LEFT(B5,FIND("分",B5,1)-1)/C5)&"分"&MOD(LEFT(B5,FIND("分",B5,1)-1),C5)*6&"秒" 数式が長くて複雑ですが、コピー&ペーストしてください。上下のセルに入力する場合はオートフィルを使えると思います。
- kagakusuki
- ベストアンサー率51% (2610/5101)
まず、B列の「投稿処理」欄に時間を入力する際には「17分」という形式ではなく、 0:17 などの様な形式で入力する様にして下さい。 加えて、C列の「件数」欄に件数を入力する際にも「件」等という文字は付けずに 17 という具合に数値のみを入力する様にして下さい。 その上でD2セルに次の様な関数を入力して下さい。 =IF(IF(COUNT($B2,$C2)=2,AND(SIGN($B2)>-1,INT(ABS($C2))=$C2),FALSE),TEXT($B2/$C2,"[h]:m:s")+0,"") そしてD2セルをコピーして、D3以下に貼り付けて下さい。 次に、C列のセルの書式設定の表示形式を[ユーザー定義]の 0"件" に設定して下さい。 次に、B列とD列のセルの書式設定の表示形式を[ユーザー定義]の [<0.000694]s"秒";[<0.041666]m"分"s"秒";[h]"時間"m"分"s"秒" に設定して下さい。 以上です。