• ベストアンサー

Excelについて質問

勤務表を作成しています。 COUNT関数のように、セルに値が入力されている箇所のみ、 数えて合計値を出力してくれるような関数を探しています。 たとえば、文字かセルの下地の色で、 数を数えてくれるような関数はないでしょうか? 若しくは、COUNT関数を応用すれば出来るかもしれませんが、 なんせif文が難しいもので。 もうちょっと簡単に使える関数はありませんか? ご教授ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

例えばA1セルからA7セルの範囲に曜日として日、月、火・・のように入力されているとします。 色が付けられていても関数でその数をを求めることはできませんので曜日を直接数えることにします。 A8セルには次の式を入力すればお望みのような数を表示させることができます。 式ではA1セルからA7のセル範囲で空白のセルが有っても計算できるようにしています。 ="土曜日: "&COUNTIF(A1:A7,"土")&" 、日曜日: "&COUNTIF(A1:A7,"日")&" 、それ以外: "&COUNTA(A1:A7)-(COUNTIF(A1:A7,"土")+ COUNTIF(A1:A7,"日"))

Lessthan18
質問者

お礼

具体的な回答ありがとうざいます。 コピペしてすぐに使えますので助かりました。 この関数コードをみて、どういうカラクリで動いているのか、 それを見極め、応用していきます。 回答ありがとうございました。

その他の回答 (2)

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

ここのような質問相談掲示板で大変よく寄せられるご質問の一種です(つまりそういうことがしたいと思うヒトが多いって事です)が,エクセルには「色で計算する関数」は一つもありません。 色で計算したいと元のご相談から書いてありましたが,そういう事が出来る方法がないので調べても出来ませんし,そういう回答もそもそも寄せられないというワケです。 というワケでご質問のヤリタイのは諦めて, >文字の違いだと7種類の考えが必要です 具体的なエクセルの姿を説明できない様子なのでこれ以上の回答は控えますが,そういう計算の手だてがあるなら,回答したようにSUMIF関数で集計するなり,COUNTIF関数で個数を数えれば特にムズカシイ事をしなくてもできます。 >こちらのほうが関数が長くなり、分かりずらいかなとも思いました。 デキナイものは逆立ちしてもできませんが,丁寧に(マジメに手抜きしようとせずに)計算していけば,キチンと欲しいコタエは簡単に出てきます。ということです。 #余談 まず,アナタの今のエクセルの姿(具体的なデータの内容も,どこのセルに何が書いてあるのかも)がまるで不明なので,「こういう関数で計算できますよ」と回答できない事を理解してください。 その上で,ジミチーな(アナタの言うところのダラダラと長くて複雑に見える)関数を使って「こうすれば一応できた」とこまで自力で作成したら,改めてその数式をご相談として投稿してみると「それはもっとこんな具合に短縮できます」という回答もすぐに寄せられます。 #参考 ネットで「get.cell関数」というキーワードを検索してみると,実は「色で計算する」方法を解説したページを多数ヒットします。 ちなみに関数なんて書いてあるので皆さん期待しますが,これは関数じゃなくマクロです。 で,よくよく書いてあることを確かめてみると,「一回別セルに色を計算で出しておき,それを手がかりに集計する」手順になっていることが判ります。 それなら最初から,色を付けた元の条件である「土曜」なり「日曜」のほうを直接計算した方が,メンドウがなくてよほど簡単です。

Lessthan18
質問者

お礼

get.cell関数、大変参考になりました。 こちらで勉強してみます。 回答ありがとうございました。

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

具体的に何がしたいのですか? たとえば B列に飛び飛びに入力されているセルの数字を合計できる: =SUM(B1:B10) たとえば A列に「何か」と書いてある行のB列のセルの数字を合計できる: =COUNTIF(A1:A10,"何か",B1:B10) たとえば A列に特にキマリのない不定の何かが記入されている行のB列の数字を合計できる: =COUNTIF(A1:A10,"<>",B1:B10) ご相談ではもうちょっと具体的に,どこ番地にどういう具合に入力されているときに,どういう理由でこれとこれを拾ってこういう結果が欲しいと言った具合に,目に見えるようにヤリタイことを説明するようにしてみてください。

Lessthan18
質問者

補足

勤務表と家計簿を組み合わせた表を作成しています。 朝昼晩と働きますので、 朝食にいくらつかった、昼食にいくらつかった、夕食にいくらつかった この家計簿から稼働日数を導き出したいのです。 稼働日数に日給を掛け合わせることで、 月給がわかります。 ベースは家計簿ですので、 勤務開始時間や終了時間、実働時間などは記入しない為、 通常のCOUNT関数では稼働日数を導き出せないのです。 何か発想があれば導き出せるかもしれませんが、 思いつかないので、土日と平日の色違いを、 関数を利用して、それを数字として表現できないかと 考えました。 私は土日祝日が完全週休二日制の、 平日のみ勤務する一般的な就業スタイルです。 表でみる土日と平日の簡単な違いは"色"のみです。 文字の違いだと7種類の考えが必要ですが、 色の有り無しだと2種類ですから、 こちらのほうがシンプルなので、 ひょっとしたら、そんな関数があるのかなと、 思いました。 "土曜日""日曜日"以外を数えるという関数でも良いのかもしれませんが、 こちらのほうが関数が長くなり、分かりずらいかなとも思いました。 なので、色で判別できる関数があると便利だし、 Excelで関数を使う上で、可能性が広がるな~と感じます。 なので、理想は下記のように A列に月曜~日曜の"文字"を一週間入力します。 この内、土曜日を青色文字に、日曜日を赤色にし、 A8に関数を入れます。 A8に入れた関数に判断して欲しいのは、 青が一つ、赤が一つ、それ以外の数の合計が"いくつ"です。 といった感じです。 ご教授ください。

関連するQ&A

  • エクセル表計算について質問です。

    エクセル表計算について質問です。 添付のエクセル表があります。 2行目に注文数を入力すると各々の単価を掛けて、4行目にABCD各々の合計を算出します。 総合計を表示するときに、 BとCに注文がなければ(つまりAまたはDに注文がある場合) 【あ方式】としているB7セルへオートサムでB4:D4の値を表示し(ABCDの合計セルには注文数がなければ何も表示しないようにif関数がいれてあります。画像では0が表示されてしまっていますが、実際はCに注文がない場合には0ではなく、空白を表示するようにしています) BとCのいずれかに注文があれば 【い方式】としているD7セルへオートサムでB4:D4の値を表示するようにするにはどうしたらいいでしょうか。 ある場合はB7セルへ、ある場合はD7へ総合計の値を表示するにはB7、D7へどういう関数を入れればいいですか、という質問です。

  • エクセルについての質問

    エクセルは2003を使用しています。あくまでエクセルは初心者です。 質問ですが、セルAB、CD、EF、GHと二つのセルを結合し簡単な表を作成し、 一番下の行のセルにSUM関数で合計を出します。 そのSUM関数で合計を出したものを、別のシートに作成した同じ表にコピー形式を選択して貼り付けを選択し「値」のみにチェックし、OKを押すと   「コピー領域と貼り付け領域の形が違うため情報を貼り付けることができません。…」 というメッセージが出ます。 これを解決し何とか、値のみ貼り付けることはできないものでしょうか。よろしくお願いします。

  • Excel IF関数を短くする式を教えて下さい。

    ExcelのIF関数が長くなりすぎて困っています。 短くする方法あれば教えてください。 =IF(A1="",0,IF(A1<4.5,A1,4.5))+IF(B1="",0,IF(B1<4.5,B1,4.5)) のように"4.5より数が小さい場合はセルの値を返し、 4.5より大きい場合は4.5を返す"というのを繰り返し合計していきます。 60セル以上を合計したいのですが、それだと数式が長すぎて・・・ 何か短くする良い式があれば教えて下さい。 よろしくお願いします。

  • エクセル2013で質問があります。

    下記のようなセルの範囲で10ページに亘って表を作成しています。 1ページ目:A1-DY33 2ページ目:A34-DY60 3ページ目:A61-DY87・・・といった具合に表を作成しております。 1ページ目はBI33、2ページ目はBI60、3ページ目はBI87・・・という様に それぞれ各ページの特定のセルに合計値が入っています。 この値が「1以上」のページのみ、 もしくは、各ページで特定のセルに入力のある(空白でない)ページのみ印刷したいのですが、どうすれば良いですか? PrintAriaでIF関数を使って試みたのですが、どうもうまくいきません。 当方、VBAは全く分からないので、関数で対処したいと考えております。 何卒、宜しくお願い致します。

  • excelの使い方で分からないことがあります

    excelの使い方で分からないことがあります ゼロから遠い値を検索する方法はありませんか?? 表の中から自分で探すのが大変で困っています。 MAX関数ではマイナスの値は無視されてしまいます。 MIN関数ではプラスの値は無視されてしまいます。 ((結果の出力方法としては、セルを色で塗りつぶしてくれるといいのですが。。。)) 何かいい方法があるはずですが、自分で調べても分からなかったので、 是非教えていただきたいと思います。 よろしく御願いいたします。

  • エクセルで一定条件を満たすセルのみ色を変えるには

     エクセルで正の数の値を示すセルだけ黄色の色にしたいのですが、IF関数等を使ってできますか。 エクセルは2003です。

  • エクセルでCOUNTの関数について

    エクセルでカレンダーを作っているんですが、 COUNT関数を使って赤色と青色の色がついているセルの数を出したいんです。 具体的に言うと1年間で赤色(日祝)と青色(土)の総数を求めたいということなのです。 if関数を使ってやるのかなと思ったのですが、赤色と青色というのがわかりません。 どのような式を作ったらいいでしょうか? どなたか教えてください。 宜しくお願いします!

  • Excelの関数についての質問です。

    Excelの関数についての質問です。 表1のセルA2の値に対し、セルB2の値の結果をセルC2に返す関数式を教えてください。 なお、表1は表2を反映した値となります(画像添付あり) 初心者です。宜しくお願い致します。

  • エクセルで、何も値を入力しないとき、自動で0を表示するセルの設定

    エクセルの質問です。 表を作成し、セルに数値を何も入力しないとき、自動で「0」が入るようにしたいのですが、関数を使うのか、セルの設定でできるのか、はたまたそんなのことはできないのか、それさえもわかっていないので、大変恐縮なのですが、アドバイスいただけると幸いです。 たとえば、セルが4つあるとします。 「5」 「0」 「2」 「7」 4つ目の「7」には関数をいれ、それ以前の3つのセルの合計を出すようにしています。 上記で「0」となっているところが、問題の箇所で、何も値を入れなくても、勝手に「0」とはいっているようにしたいのです。 よろしくお願いいたします。

  • エクセルの関数についての質問です

    エクセル2010で A1のセルに「○」が入力されると +3 A2・A3・A4 のセルはどこか一箇所にでも○が入れば、1を足します。 二箇所、三箇所に入っても 1しか足しません。 その合計数をBの列に表示させるようにしたいのです。 Bの1~4のセルは結合されています。 すべてに○が入った場合は、B列の数字は 3+1=4 A1にしか○が入らなかった場合のB列の数字は3になります。 3+0=3   A   B   1 ○ 2 ○ 3     4 4 ○   ○が入れば、3を足す  一箇所にでも入れば1を足す それぞれ別の関数は出来たのですが ふたつの条件の合計を出す式が出来ません。 非表示の列を作って、そこにまずは別々に数字を出して それを合計させる手もあると思うのですが 列を増やしたりせずに、関数だけで、B列に数字が入るようにしたいのです。 うまく伝わりますでしょうか どうぞよろしくお願いします。

専門家に質問してみよう