こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Excelの関数で複数条件の求め方、わかりません。

またExcel-関数のこと聞いたら怒られるかしら。
つい最近聞いたばかりなのに、結局よく分からないでした。
count-ifはとりあえず分かったような気がします。でも、ちょっと複雑になると分かりません。(頭の悪い高2の女の子です、ごめんなさい)

縦の列に、例えば合計を集計するような場合、一つの列ならその中の特定な文字などを選んで集計できますよね。
 たとえば、縦1列の中に、「高1」「高2」「高3」とか入れたら、下の合計のところを普通は1つで数字だけの合計をcountifだと、合計のところを縦に3段にして、「高1」は3人、「高2」は5人、「高3」は7人とか出せますよね。(項目が多かったら右のどこかに別に表を作ってもいいですよね)

 でも、縦の列の右隣に2列目、3列目を作って、たとえば、女子高生がどんなスカートをはいてるかを調べるとき、2列目は色、3列目は形にして、例えば、高2でピンクのプリーツスカートをはいていた女の子は○人、とか、3年で白のティアードミニの子は○人とかを求めたいとき、どこにどのような集計表を作って出せばいいのでしょうか。

前回教えていただいたのは、
=SUMPRODUCT((A:A="○")*1,(B:B="高2")*1)と入力します。
または、C1に「○」、D1に「高2」と入力し、
E1に「=SUMPRODUCT((A:A=C1)*1,(B:B=D1)*1)」と入力してもいいです。

ということだったのですが、このA:AとかB:Bとかはどこの範囲を指すのでしょうか。普通SUMなんかの時はA3:A25とかで範囲を示すけど、A:Aでっていうのはどういう意味になるのでしょう。
また、*1というのも何を指すのか分かりません。

それに、集計するための表って、どのように作るのか。
 1年で白のプリーツの子3人 その下に1年で白のプリーツの子3人、1年で白のティアードの子2人、1年で白のフレアーの子4人、1年でピンクのプリーツの子7人、1年でピンクのティアードの子5人、1年でピンクのフレアーの子5人、1年でチェックのプリーツの子4人、1年でチェックのティアードの子4人、1年でチェックのフレアードの子5人、と出して、さらにその下に、今度は、2年、3年というような表を作るのでしょうか。全く分からないでづぅ(もう私泣いてしまってます)。

 それから、もう一つの合計を求めるので、例えば、B先生は、7月1日は午前だけ講義、
C先生は午後だけ教える、A先生は、午前も午後も学校にきている。とか言う時、縦1列目に日付、縦21列目に外国講師先生の名前、3列目に午前、4列目に午後として、午前か午後だけしか出ない先生はその日は「1回」と数えて、午前も午後も出た先生はその日は2回と数えるような数え方で、A先生は7月○○回の講義、B先生は7月○○回の講義というような集計を出したい場合はどうやるのですか。

 長くって、訳の分んない内容で本当に御免なさい。
私なりに、いろいろやったんですが、どうしてもできないの。私凝りだしてしまうとすごく気になってしまって、夏休みに入っていろいろExcelの本広げて見たりするけど、さっぱりわかんないの。もう涙が出てしまって、。誰か詳しい方助けてください。
 本当に手間のかかる女の子でごめんなさい。

投稿日時 - 2009-07-20 20:08:54

QNo.5141389

困ってます

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

回答(9)

ANo.9

> また見ていてくださっていたら、懲りずに教えてください。

教える、なんて人が人には出来ない、と私は考えています。
勉強しようと頑張っている人の手助けなら可能でしょう。

ただ、今回は他の回答者様と私のアプローチ方法があまりに
違うために、混乱を避けるため私は下ろさせて頂きます。
力が入っている方を優先するのは当然と思います。
最後に前回のフォローを少ししておきます。

> ・・・こういうことでいいでしょうか。

そうです。その様な、この方が良いとか考えることが設計です。
次のステップの集計を求める作業が、ここで簡単になるように
考えていることに気が付かれていることでしょう。
難しいデータを力技で集計するより、如何に簡単に集計するか
データ表の見直しをされたと思います。
この見直しが重要です。これをシステム的にはフィードバック
と言いますので、将来、理解が進んだときのために覚えておい
て下さい。

・表の作り方で1件気になるところ

A~D列にデータ表を作り、右に集計表を作るようにしていますが、
これははっきり言えば、拙いです。

それは、データ表にデータを追加すると集計表が崩れてしまうた
め、メインテナンス(メンテナンス、修正など)を行うことが
複雑になりミスを誘発します。データ表のデータの削除が1番
拙い状況を作り易くなりますね。
設計思想には、物事を単純化し、難しい作業をコンピュータに
任せるように考えましょう。
人間は間違える動物です。間違え難く作ることが重要です。
(設計思想をアーキテクチャ:architectureと言います)

従って、集計表は右に作るのではなく下に作るべきでしょう。
更に言えば、別シートの方がいいと考えます。
シート名がシートの内容を表すように名前付けを考えると、
2種類の表が入ったシートは長いシート名になり複雑化している
と言えるでしょう。
ただ、単純な合計とかであれば、データ表の下で十分です。
先生毎にデータが並ぶ「表」いわゆる二次元データになる場合
は、別シートにすべきと考えます。

Excelで物事を処理する場合、次元数を常に念頭に入れます。
そして1シートに2次元表現をすべきで、2次元表が2つ以上あれ
ば合わせて3次元になっている訳であり、3次元目はシートを
利用することにより表せます。
今回は3次元になっている事実が、2次元世界と比べて、難しく
なっていることが分かります。ただ、データ表や集計表の見直
しをすると2次元になる可能性はあると思います。
次元数を少なくするのも単純化です。

1シートに複数の表を書く人はプロでもいると思います。
このような仕事は「やっつけ仕事」といい、その場逃れだけの
仕事です。思想が無いということですね。

まあ、今回はそのようなことも念頭に入れ、1シートに複数の
表を作るのもあり、かなと考えられます。それは計算の時の
データアドレスの指定がシート名付きになって複雑化する
ためです。

同じように各列の項目名もその名前で意味がはっきりするように
命名することも重要です。初めてみる人がシート名や項目名で
何をしているExcel表かが直ぐに理解できるような作りが理想です。

最後に

> 少しずつ分かってきました。

このような言葉が聞けると幸せな気持ちになります。
上昇気分が味わえます。
その為に口出ししているといえるでしょう。
では頑張って下さい。

投稿日時 - 2009-07-26 02:16:13

お礼

いろいろと教えていだだいてとてもありがとうございます。
なんと、スカートの色、形の分類はできました!1。
でも、講師の回数はどうしても分かりませんでした。
 COUNTIFでも、SUMPRODUCTでもなさそう。
でも、ひとつできた表から下や横にコピーするとき、元の表に作った数値を変えては困る時「$」を記号と数の前に入れることも分かりました。なんだか、少しずつできるようになって嬉しいです。

下に呼び出す表を作る、できれば別sheetにとのお話、
 確かにセルの挿入、削除などをするとき、別のsheetの方が崩れる心配ないからいいですね。

 もうひと方の「おじさま」は情熱を燃やしていろいろと答えてくださって、私は、受験勉強で塾や学校の勉強(高2の女の子って表記しちゃったけど、2と3を押し間違えたみたい)のかたわらに暇があるときくらいにしか、このExcelには取り組んでいないのに、本当にありがたいですが、ちょっとわかりにくいです。
 私は、Tasuke22様の作り方の方に似ていたので、頼りにしていたのですが、「手をひかれる」なんてちょっとさびしいです。
 私のようなカウントを求める方法の例はあんまり(というか
載ってないです)ないので、教えていただきたかったのに…。

 今まで、クラスの男の子で知っている子はいないかなって思っていたけど、「すぐ女は聞く」とかなんとか、言われるから、悔しいから、いろいろと本探して見たの。でも分かんなかった。
 でもおかげで少しずつ分かってきて、これで「女は○○だ」って言われないですみそうだわ。今、ちょっぴり嬉しい気持ちになってきたわ。

 またの機会にお聞きしますので、よろしくお願いします。
 本当にありがとうございました。。



 

投稿日時 - 2009-07-28 14:33:03

ANo.8

私、いま頭に乗っています。”見っけ!”で至福の興奮=エクセルでご教授受けて解決した時いつも味あう 晴れ晴れとした開放感・喜びを感じています。エクセルの醍醐味の真っ只中です。
気になっていたご質問の「=SUMPRODUCT((A:A=C1)*1,(B:B=D1)*1)」の*1の理由を見付けたからです。例によってグーグルで
「=SUMPRODUCT((A:A=C1)*1,(B:B=D1)*1)」を検索。
あなたの質問が最初にあり、5番目に
[SUMPRODUCT関数の疑問 - 質問・相談ならMSN相談箱] にご回答者:nishi6様の
「SUMPRODUCT関数は論理値(Boolean)の加算を行っていません」と在ります。
数値化するための*1 だったのですね。ご覧になってください。
http://questionbox.jp.msn.com/qa407966.html
のどのつかえが取れました。SUMPRODUCT関数はこれから学習ですが。

投稿日時 - 2009-07-25 08:28:04

お礼

いろいろと教えていだだいてとてもありがとうございます。
なんと、スカートの色、形の分類はできました!1。
でも、講師の回数はどうしても分かりませんでした。
 COUNTIFでも、SUMPRODUCTでもなさそう。
 「おじさま」は情熱を燃やしていろいろと答えてくださって、私は、受験勉強で塾や学校の勉強(高2の女の子って表記しちゃったけど、2と3を押し間違えたみたい)のかたわらに暇があるときくらいにしか、このExcelには取り組んでいないのに、本当にありがたいですが、ちょっとわかりにくいです。

 でもおかげで少しずつ分かってきて、これで「女は○○だ」って言、ちょっぴり嬉しい気持ちになってきたわ。

  本当にありがとうございました。。

投稿日時 - 2009-07-28 14:38:07

ANo.7

弱かった頭も加齢で悪化。見落としが多くなりましたので、再再度おわびと訂正および簡略化で参上します。ご笑覧ください。
A1からA10までのセルに下記を。(さらにB1からD1までA・B・C と先生名を入力します)
講義担当    
午前の講義
午後の講義
午前と午後
週間講義回数
月曜日
火曜日
水曜日
木曜日
金曜日
各先生のデータをB6からD10 に。ここではAM PM AMPMの文字列にします。

それから計算式を(まずA先生のを)B2からB5 に入れます。
B2 に=COUNTIF(B6:B10,"AM")
B3 に=COUNTIF(B6:B10,"PM")
B4 に=COUNTIF(B6:B10,"AMPM")*2
B5 に=SUM(B2:B4)
それからB2からB5を選択状態にし全先生分までオートフィル。

スカートの件も(私が今回学習したので強引ですが)COUNTIF関数でやってしまうと以下の様になります。
A15からA29 のセルに下記を入れます。(B14からD14 に 高1高2高3)
Aスカートで白
Aスカートで黒
Aスカートで紺

Bスカートで白
Bスカートで黒
Bスカートで紺

Cスカートで白
Cスカートで黒
Cスカートで紺



ネイビーブルー

そしてデータ記入用に、A14からD25までをコピーしてF14に貼付け。
高1のG15からG25に白黒紺を意味するH B N の各文字を統計にしたがい入力。
計算式は
B15 に=COUNTIF(G15:G25,"H")
B16 に=COUNTIF(G16:G26,"B")
B17 に=COUNTIF(G17:G27,"N")
高2 高3も同様に。そして色別の集計は
B27 に=COUNTIF(G15:I25,"H")
B28 に=COUNTIF(G$15:I$25,"B")
B29 に=COUNTIF(G$15:I$25,"N")
以上です。またミスありましたらご推察で補ってください。言い訳としては回答一回につき推敲に全力集中で2~3時間は掛けていますので。
過去、株式していた時は自己要求が増え複雑な関数増築をし、便利な固有のエクセルを構築していました。ただ自分が必要とするもの以外の関数を試みませんでしたので未知だらけです。今は使う機会が無く、ご質問に便乗して久しぶりのエクセルでした。
データの作表や使用関数の決定は、おしゃれと同じでその人のセンスが現れるそうです。まず誰かの参考通りにやってみて、そのあと、あなた固有のスマートなデーター表や使用関数を決めてください。靴・衣装・ヘヤースタイルや化粧のトータルコーディネイトと同じです。数学ではなくゲーム感覚で楽しんでください。PCやエクセルはたかだか道具ですから、そんなもので自分を追い詰めないでください。 では追い詰める程やって良いのは.....人間長くやってきて言えるだろうと迫られたら苦し紛れに....心の鍛錬 かな。
今まで一冊の関数の本を傍らに置いてのエクセルでしたが、今回Google検索でググッて色々ヒントがあるのを発見。収穫でした。ありがとうございました。

ごめんください。

投稿日時 - 2009-07-23 13:16:50

補足

こんなに何度も何度も回答を寄せていただいて本当になんて言ってお礼をしたら好いんでしょう。
でも、おじさま(ojin60様じゃ、とっても失礼に感じちゃいますから)
どうか、どうか謝るのはやめてください。
 悪いのはこの私なんですから、もっと自分で苦労して調べたりしないといけないけど、どこから手につけていいなか分からない私です。
 今、おじさまに教えてもらったことをもとに挑戦しているところ、できたら、その報告とお礼をしますから、もう少し待っていてちょうだいね。

投稿日時 - 2009-07-24 21:40:59

ANo.6

>どうしてセル範囲C1:F2って2段目をあけるのですか。
間違いばかりでごめんなさい C1:F1 でした。
COUNTIF()を使うのなら、にわか勉強ですがまず
>縦21列目に外国講師先生の名前、3列目に午前、4列目に午後として、午前か午後だけしか出ない先生はその日は「1回」と数えて、
-----では在りません。カウント・イフを使う場合このカウントとは午前か午後と記入されたセルの数をカウントします。
午前とか午後と講義日に入力してください。A4から行方向に25日間だとすると、B1 が外国の講師名のとき
B2 に COUNIF(B4:B28,"午前") 注=午前午後以外は半角英数文字。
B3 に COUNIF(B4:B28,"午後") と式を入れます だと思います。
下記はGoogleで検索した参考アドレスです。あせらず ゆったりとね。
COUNTIF() は 条件を満たした セルの合計数。
http://www.excel.studio-kazu.jp/mag2/backnumber/mm20040824.html
http://oshiete1.goo.ne.jp/qa2146300.html
SUMIF() は 条件を満たした 数値の合計。
SUMPRODUCT() は 配列の積の和 だそうです。
http://www.excel.studio-kazu.jp/lib/e3h/e3h.html
重ね重ねのミス 深くお詫びいたします。

投稿日時 - 2009-07-22 23:18:34

ANo.5

まあ、私が言いたかったのは物事には手順というものがあり、
いきなり結果を求めると難しくなる、ということです。
結果を求めるまでの作業をもやもやでまとめないで、メリハリ
のある内容で小分けにすることが重要です。

先生の方の表が出てきたので、これを検証しましょう。

A~D列がデータ表ですね。このデータ表の仕様を詰める必要が
あります。一見全てを表しているようで、まだ未知の内容があ
ります。細かいところまではっきりさせましょう。集計に関す
る検討はその次の話です。これを作業手順といいます。

勿論、全てが明らかになったと思い、集計に進んでも未知の部
分が出てきたら作業は後戻りする必要があります。

では、データ表の疑問点です。

1行は先生が講義した回数を正確に表すのか?
例えば、同じ日の午前に同じ先生が2回講義をしたら同じ内容
の行が2行なのか? それとも午前に2という数値が入るのか?

そもそも先生の講義の回数とは?
あるクラスに講義した回数なのか?
先生自身が講義した回数なのか?

午前午後の具体的な値は?
1と無し、とか○と無し、とか・・・・数値か文字か?

今疑問に思うのはこんなところですね。

投稿日時 - 2009-07-22 18:08:42

補足

こんなに何度も何度も回答を寄せていただいて本当になんて言ってお礼をしたらいいのか、本当にごめんなさい。
どこから手につけていいなか分からない私ですが、少しずつ分かってきました。
 先鋭の講義回数は初めは○だけでしたが、クラスが違うから、同じ日でも、午前2回、午後は0回になったり、他の日は午前1回、午後も1回、また3日目は午前、午後ともなしの日もあることがわかったから、数字の方がいいわ。
 スカートの問題は、A,B,Cの列には、色、形として、縦の数字枠には、学年にしようかなって思います。
 こういうことでいいでしょうか。
 お忙しいのに、私のような女子高生という子供に、本当にこんなに丁寧に、対応してくださって、嬉しいわ。とっても感謝です。
 もしも、また見ていてくださっていたら、懲りずに教えてください。
 

投稿日時 - 2009-07-24 21:47:06

ANo.4

NO3です。 夜中に目覚め不注意に気付きましたので訂正します。
SUMIF()関数のカッコ内は(範囲,検索条件,[合計範囲]) ですから
範囲は先生の名前のあるセル範囲 C1:F2
検索条件は各先生の名前 "イ先生"
合計範囲は7/1から7/31までの講義のあった=1と入力したセル に訂正します。 ごめんなさい。 また、 私案1a,1bとはしないで午前・午後そのままが良いでしょう。さらに、 自分が必要な関数しか知らないのを今回は露呈しました。 グーグルで「Excelの関数で複数条件」で検索し最初の[IF関数と複数条件--Excel・エクセル]を見たら、
「条件集計で、SUMIF関数までは使える方も多いと思います。しかし、」
とあり自分のレベルが低い事に気付きました。 でそこにある「SUMPRODUCT関数はテーブル相互間の「積」の合計を計算してくれますが」 からを見るとあなたの疑問の*1は推察できると思います。
講義回数のご質問は関数の練習の為には良いのですが、 SUMIF()にしなくてもSUM()で答えが出る問題ですよね。 各先生の名前が複数回で順列に規則性もなく出てくる場合を集計するのにSUMIF()がべんりです。
レベル低いのに 出しゃばって ごめんなさい。

投稿日時 - 2009-07-21 05:25:34

補足

ごめんなさい。おじさまのいうような表を作ってみたけど、どうしてセル範囲C1:F2って2段目をあけるのですか。

それから、回答者様1.2の方の補足で書いたように、もうCOUNTFの表があるので、また違う表を作らないとならないとなると、もっと混乱してしまいます。

投稿日時 - 2009-07-22 17:06:29

ANo.3

私は長年皆様のご回答で助けられエクセル大好き爺さんですが、 頭悪く A:Aは何だっけ? となった時、グーグルの検索欄に「エクセル関数 A:A」 と入力。 A:AはA列全体の範囲と判ります。 先生の講義回数は「SUMIF()」 と入れて検索すれば解説が読めます。 エクセルの質問で大事な点は、回答者がうんざりしない質問を考えてすること。 私もはじめ苦手で回答者に迷惑をかけました。
列はアルファベットですよね。 行は数字ですから、最初のセルはA1と呼び、 1列目はA列です。 これを日付としますと。
2列目のB列を私なら午前・午後とします。
3列目のC列以降を先生の名前イ・ロ・ハ・・・・・とします。
以下は参考例です。
A列の3行目つまりA3に7/1と入力 
A4空き
A5に7/2と入力
A6空きとし、
以上4個のセルを選択しオートフィルします。 「オートフィル」はググレば解説がありますが、 選択した右下A6のセルの右下にカーソルを当てると+になるのでそれを下に31日までドラッグします。 
B列の3行目つまりB3 に午前を表す1a と入力
B4 に午後を表す1b と入力し
この2つを選択し右下でカーソルが+になったら31日までオートフィルします。 C1からD1・E1・F1・・・・・と先生の名前を入力。 C2からD2・E2・F2・・・に計算式SUMIF()を入れます。 講義のあった該当セルに1を入れてゆきます。 それをSUMIF() で計算します。 範囲は7/1午前から7/31の午後まで。 一人の先生の計算式ができたらそのセルを右へオートフィルすると各先生の講義回数が出ます。 
日付については土日休みを除いた記載や特定の日を除く(休日が新設されたなど)ことが出来る「WORKDAY()」を利用する事も出来ます。

投稿日時 - 2009-07-20 23:31:29

ANo.2

設計は全てですがデータ構造の設計といえば、
どのような表なのか、ということです。
表は既にあるのですか?
あれば先ほども書きましたがアップして下さい。

表無しで求め方を聞かれても、集団お見合いを
して、まだ相手が男か女かも分からない状態で
付き合うか付き合わないか聞かれている様な
状態です。答えようが無い、ということです。

投稿日時 - 2009-07-20 22:53:37

補足

分からずじまいで迷惑ばっかりかけてます
その表作りがわからないです。
COUNTIFの時は、A列に日付、B列に先生の名前、C列に午前、D列に午後、 そして少し開けて、F列に集計のための先生の名前(B列に出てきた同じ先生の名前が何回出ているかを呼び込むための列、、G列にFに入れた先生の名前の合計数値を表示するための表というのか枠を作りました。
 でも、たとえばA先生が、B列に7回出てきたという数え方しかできないので、午前、午後で各1、一日出た時は2とカウントしたいけど、その呼び込むための表の作り方が分からないのです。

スカートの評もどんな関数を使い、その集計表をどのように、どこに作るかというところからして分かんないんです。

>表無しで求め方を聞かれても、集団お見合いを
して、まだ相手が男か女かも分からない状態で
付き合うか付き合わないか聞かれている様な
状態です。答えようが無い<
と言われても、素人の私には分かんないです。

投稿日時 - 2009-07-22 16:51:54

ANo.1

どう計算するは最後の話です。
計算方法よりもデータ構造の設計が先です。

どう表現するかが最初に決める重要な設計です。
各列にどの項目を書いて表現するか。
学校の生徒のスカートの色と形と学年だけなのかどうか。
最終的に欲しいデータの元になるデータが全て入っている
かどうかです。そしてその表を質問でアップしないと、計算
方法は答えようが無い、ということです。

先生の講義に出たデータもどのように表現して持ちますか?

投稿日時 - 2009-07-20 20:46:15

補足

ありがとうございます。
設計って?
生徒の方は、第一段階として、二つの要素、学年別でスカートの色違いの子がそれぞれ何人かを求める。
そうした計算方法ができたら、第二段階として、三要素、学年別で、色違い、形違いの、たとえば、3年生でチェックのプリーツはいてる子は○人とか、高2年で、ピンクのスカートの子は○人で、そのうティアードミニの子は○人、とかです。
学校の先生の講義回数は、質問に書いたように、A先生は、7月は午前、午後、一日をひっくるめて(一日は2回と数えて)合計何回講義があったか(午前の回数が○回、午後が○回、午前午後は2回を日数分かけた数が出せればなおいいけど、今の私の頭では混乱してしまいそう…もう混乱というかパニック状態!!)

投稿日時 - 2009-07-20 20:56:24

あなたにオススメの質問