データの分析、グラフ作成、および通信のためのツールを備えた Microsoft 表計算ソフトウェアのファミリ
こんな風に 0:40 と TIMEVALUE("0:40") を表示形式で「標準」にしてシリアル値を確認して、差異がどうなっているか確認してみてください。
手元では上のように差はなく、B1 の捕獲式は TRUE となります。
※ Microsoft 365 Apps バージョン 2501
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
セルA1に「0:40」と入力し、セルB1に「=A1=TIMEVALUE("0:40")」とすると「FALSE」が返ります。
時間を1日を1とした小数にして、さらに2進数で扱う以上、無限小数となるのは仕方ないとしても、直接入力の「0:40」とTIMEVALUE("0:40")の「丸め方が違う」のはどのような理由によるものなのでしょうか。
このため、時間範囲を指定したSUMIFS関数やAVERAGEIFS関数において、想定した範囲を拾えないという問題が発生してしまいました。こちらも対処法があるなら教えてください。
データの分析、グラフ作成、および通信のためのツールを備えた Microsoft 表計算ソフトウェアのファミリ
ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。
質問文の通りに入力すると TRUE になりますね。
どこか入力間違いでも。
ご回答ありがとうございます。
SUMIFS関数をSUM関数にしてIF関数と組みわせる方法やAVERAGEIFS関数をAVERAGE関数にしてIF関数と組み合わせる方法はあると承知しております。
代替候補としてはSUMPRODUCT関数も使えるとは思います。
しかし、私が求めているのはSUMIFS関数、 、AVERAGEIFS関数での解決方法です。
これらの関数は条件範囲の引数に範囲を指定することはできるのですが、配列を指定できないので、元の表の数値を加工して参照することができません。
条件範囲の引数は元の表の値のままで、条件値を工夫することになるのではないかと予想します。
これを解決する、良い方法はないかという質問になります。