- ベストアンサー
エクセル。LARGEの使い方
アメリカンフットボールのスコアブックを作成中です。 (行と列があやふやなので、たてと横で書きます。) たてに、選手の名前、横にプレーを置きます。 A5の松井選手が5プレー目にランだと、 Bが1プレーめ、Cが2、Dが3、Fが5なので、 Fのランのところに、ランの距離を入力(5ヤードなら「5」)。 松井選手のランの距離とか、チームの距離などを合計してます。 チームの攻撃時間の合計を出したいのですが、たとえば、 B(1プレー目)11:50(11分50秒)から攻撃をはじめて D 8:20に終わり。 次は別のチームが攻撃して、 G 6:15 M 2:30 と入力していきます。 で、1クォーター分の攻撃時間の合計を出すために、 LARGEを使って、一番大きい時間から、2番目に大きい時間 を引いていくと、差が攻撃時間になります。 11:50 - 8:20 6:15 - 2:30 これを足して攻撃時間を出したいのですが、 (時間の計算は、時間を入力しているところとは、別のところでやってます。) そのチームが何回攻撃するかわからないので、 大目にLARGEを使うと、たとえば「7番目に大きい時間」はない、ということになります。 それで、「#NUM!」が出てしまいます。 「#NUM!」を出さないようにするには、どうしたらいいでしょう? 最初から、「#NUM!」の消し方を質問すればよかったような 気もしますが、1クォーターから4クォーターまでの 攻撃時間を足すときに、「#NUM!」があって計算できずに 困っています。 長い質問ですが、よろしくお願いいたします。
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
#1を修正します。OK値がうまくいきませんでした。 =IF(ISERROR(Large(C5:G5,7)),"",Large(C5:G5,7)) でエラーは非表示になり、SUMが使えます。
その他の回答 (7)
- april21
- ベストアンサー率42% (91/216)
>ときて、(時間)のところは、非表示になったのですが、 >時間を引き算したD6とかD7とかのセルがこんどは、 >「#VALUE!」になってしまいました。 >(時間がないときの場合です。) この時間というのがnishi6さんが書かれた =IF(ISERROR(Large(C5:G5,7)),"",Large(C5:G5,7)) で出したものであるなら ""の所を" "のように間違って空白を入れてませんか? ""になってる場合はエラーにならないはずです。 =SUMIF(合計する範囲,">0",合計する範囲) が0以下のものは対象にならないのでマイナスはダメです。 (Large関数で大きいほうから引くと思ってましたので) では、再び(^^)/~~~
お礼
APRIL21さん、何回も回答していただいて、ありがとうございました。 疑問が解けて、無事、スコアブックを完成することができました。 ところで、最後に一つ質問が、、、。 ウソです。 ほんとに、どうもありがとうございました。 今日にでも、本屋さんで、エクセルの入門書か解説書を見て、 一から勉強をはじめてみます。 それにしても、マイクロソフトは、OFFICE XPですか あたらしいソフトを出す前に、もっと簡単なヘルプを 作ってほしいものです! マイクロソフトのオンラインのヘルプとか、、、。 とにかく(?)どうもありがとうございました。
- april21
- ベストアンサー率42% (91/216)
>「#VALUE!」がでるのですが、これを消すにはどうすれば いいのでしょう? このエラーも↓で書いた条件書式の設定で表示されなくなります。 合計もSUMIFで↓のようにすれば出るはずです。 (^^)/~~~
お礼
お礼は、上にまとめてありますです。
- nishi6
- ベストアンサー率67% (869/1280)
>「#VALUE!」になってしまいました。これを、消す方法はありますでしょうか? 例えば、A1とB1の時刻の差を出す場合、 =IF(ISERROR(A1-B1),"",A1-B1) とすれば #VALUE! はでないでしょう。また、普通にSUMで合計できます。 A1>=B1でないと(マイナスになると)また工夫がいりますが。 「IF(ISERROR(A1-B1)・・・」は、(A1-B1)がエラーだったら何も表示しないで、エラーでなければ A1-B1 を表示する意味です。
お礼
NISHI6さん、二日間に渡り回答していただいて ほんとにありがとうございました。 ついに「アメフト・スコアブック」完成です。 制作者のところに「NISHI6さん、APRIL23さん」と クレジットを入れたい気もしますが、ニックネームですと ちょっと変ですよねぇ? どうもありがとうございました。
- april21
- ベストアンサー率42% (91/216)
エラー表示させない方法を補足します。 2度回答してるのでこの回答にまとめます。 >攻撃時間を足すときに、「#NUM!」があって計算できずに 困っています。 表示はそのままで良いであれば合計セルに =SUMIF(合計する範囲,">0",合計する範囲) と入力すれば合計が出ると思いますが・・。 No.2の補足 セルの書式設定は「時刻」にしてください。 ■エラー表示させない A1を選択して「書式」-「条件付き書式」で 「セルの値が」→「数式が」に変更 =ISERROR(A1) と入力 「書式」-「フォント」でセルの色と同色(白など)を選択。 A1を選択してコピーしてエラー表示させたくないセルを全て選択して右クリック 「形式を選択して貼り付け」-「書式」-「OK」
お礼
ありがとうございました。 教えていただいたようにしましたら、、、 (時間)ー(時間)=時間の差 (時間)ー(時間)=時間の差 (時間)ー(時間)=時間の差 ーーーーーーーーーーーーーーー 時間の合計 こう並んで、(時間)がないときも、下のNISHI6さんの 方式で、エラーが非表示になりました。 そして、時間の差をたてに合計するのは、APRIL21さんの 方式で、エラーが出ないで、計算できるようになりました。 今度は、上の(時間)がないときの「時間の差」のところに 「#VALUE!」がでるのですが、これを消すにはどうすれば いいのでしょう? (ないものを引き算しようとしているというエラーでしょうか?) 妙案をご存知でしたら、お教えいただけないでしょうか? もう、エクセルのヘルプには、うんざりしました、、、。 もう一度お助けくださいませ!! よろしくお願いいたします。
- april21
- ベストアンサー率42% (91/216)
No.3の補足 セルの書式設定は「時刻」にしてください。
お礼
いやぁ~、それにしても、こんな回答と質問のシステムを 作ったOK WEBのスタッフと、そしてなにより、ボランティアで 回答に当たってくださる回答者に感謝です。 さらに詳しいお礼は、#5に続く。(?)
- april21
- ベストアンサー率42% (91/216)
私も内容はよくわかりませんが >攻撃時間を足すときに、「#NUM!」があって計算できずに 困っています。 表示はそのままで良いであれば合計セルに =SUMIF(合計する範囲,">0",合計する範囲) と入力すれば合計が出ると思いますが・・。
お礼
「=SUMIF(合計する範囲,">0",合計する範囲)」 で、おっしゃる通り、合計が出ました。 詳しいお礼は#5に続く!(?)
- nishi6
- ベストアンサー率67% (869/1280)
内容はよくわかりませんが、#NUM!への対応としては、例えば、 =IF(Error.Type(Large(C5:G5,7))=6,"",Large(C5:G5,7)) とすれば、加算できると思います。 6 が エラー #NUM! を表します。
お礼
「内容はよくわかりませんが、、、」 ですって? やっぱり、、、。 お礼も#2のところに書きます。
お礼
いやいや、すみませんでした。 自分で読んでもわかりにくい質問でした。 それを、ちゃんと解釈してくださって、回答まで寄せてくださるとは、 「感謝×感謝」であります。 教えていただいた「IF(ISERROR、、、)」が何のことか さっぱりわからないほんとの初心者ですので、とりあえず、 そのまま入力しましたら、あーら不思議! ほんとにエラーが非表示になりました。 で、合計もできるようになりました。 甘えついでに? (時間)ー(時間)= たとえばD6 (時間)ー(時間)=D7 、、、 ときて、(時間)のところは、非表示になったのですが、 時間を引き算したD6とかD7とかのセルがこんどは、 「#VALUE!」になってしまいました。 (時間がないときの場合です。) これを、消す方法はありますでしょうか? 「#VALUE!」が出ていても、合計は出てきますので、 十分「スコアブック完成!」といえるのですが、ここまで きたら、あと一歩欲が出てきました。 お時間がありましたら、アドバイスいただければ、幸いです。