Q&A
解決済み

通話時間を厳密に計算したい

無題.jpg

限りなく表計算ネタで通話時間の話になります。
LibreOfficeのCalcを使用しています。
日本通信では通話明細をCSVでダウンロードできるのでダウンロードして通話時間を計算してます。

一般的に通話時間の定義は例えば
1秒でも通話したら30秒で計算となると思います。
それを踏まえた上で表計算ソフトで式を作ろうと思うのですが

a)D列にSMSという文字列があったら時間の計算から除外(念の為)
b)D列に他社という文字列があったら時間の計算から除外(0570の為)
となると思います。
他に例外があれば教えて下さい

現時点でH列の式は
i2 =CEILING(FLOOR(H2,"0:0:30"),"0:1")
を入れています。
a bの例外条件をi列に組み込めば時間の計算が正しく出ると思います。

この内容とほぼ同じ内容をYahoo知恵袋に投稿しましたが誰からもレスが付かず2週間がたち削除されました。

この表、0570を含めて1時間8分(68分)
なかなかのいい勝負だなぁ

【2022/01/31 02:42 追記】
H列ではなくI列の式は・・です。


2 件の回答

iPhone XS Max SIMフリー(楽天モバイル) medal ベストアンサー獲得数 36 件

例えば、1行目、3分16秒5なので、本来3分30秒として通話料は計算されるはずですが、3分00秒として合計されています。
これは日本通信の通話料計算の仕方と合っているんでしょうか?

端数丸めは、切り上げする関数を使った方が良いような気がするのですが…
FLOOR関数で30秒単位で切り捨てしてから、1分単位で切り上げしているのは何故なのでしょうか?
  • 1
あいだの2件を表示
ベストアンサー
ベストアンサー

iPhone XS Max SIMフリー(楽天モバイル) medal ベストアンサー獲得数 36 件

>>4

日本通信のサイトに詳しめに書いていますね。

Wスマートプラン 国内通話料について
https://www.nihontsushin.com/plan/planwsmart_detail.html#kokunai

「通話時間は30秒ごとのカウントになります」
とあるので、やはり通話明細ごとに切り上げですね。

<以下引用>
「無料通話」の対象外
i) 国内通話以外(国際ローミングおよび国際電話)
ii) 国内通話のうち以下の電話番号に発信するもの
a) 衛星電話、衛星船舶電話
b) 0570(ナビダイヤル)、0180(テレドーム)などの他社サービス
c) 104(電話番号案内料)
<以下略>
ベストアンサー この回答はベストアンサーに選ばれました。
  • 5
谷 勝弘
谷 勝弘さん・質問者
Gマスター

Pixel 6(日本通信SIM) medal ベストアンサー獲得数 11 件

無題.jpg

>>4 さとさん
>これは「=timevalue(E2)」関数を使うと切り捨てされずにコンマ秒までシリアル値に変換してくれますよ。

バグかなぁ
試しにExcelで読んでみたら「0:3:17」と表示されました。
そもそもExcelでCSVを読み込めば時間もシリアル値で読んでくれるのですがLibreOfficeのCalcでCSVを読み込むとき日付はシリアル値で読み込めるのに時間についてはシリアル値で読み込む機能が実装されていないので=timevalue(E2)を使うことにしたのです。

あと式は=ceiling(H2,"0:00:30")が良いですね
  • 6
あとの2件を表示

iPhone 12 mini(UQ mobile) ベストアンサー獲得数 1 件

日本通信のことがよく分からないので、的外れだったらすいません。

3桁番号にかけた場合、有料と無料があります。
有料と無料の区別はリンク先をご参照ください。
https://web116.jp/phone/telephone/#104_title

「フリーダイヤル」と「フリーコール」にかけたら無料です。
  • 2