OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

エクセルの関数について教えてください。

  • すぐに回答を!
  • 質問No.172713
  • 閲覧数188
  • ありがとう数4
  • 気になる数0
  • 回答数6
  • コメント数0

お礼率 46% (34/73)

どの関数を使ったらよいのか教えてください。

1.例えば、1000以上2000以下の数値が入っているセルの個数をカウントしたい。この場合、COUNTIFで式を入れようとしても条件がひとつしか入らないので(">1000"のように)、他のどの関数を使えばいいのでしょうか。

2.ある文字列の中で同じ文字があった場合、その文字とセルの個数をカウントしたい。例えば、ある範囲にA,D,W,D,R,D,A,A,Wとあった場合、A 3,D 3,W 2,R 1というような結果がほしいのですが。
基本的なことで質問して申し訳ないのですが、急いでやらなければならないことがありますのでよろしくお願いします。
通報する
  • 回答数6
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.6
レベル5

ベストアンサー率 25% (1/4)

1.に関して言えば、
=IF(C2<1000,"",IF(C2>2000,"","a"))
この数式を使う手もあります。
これで、aの数をカウントするんです。
(式の意味は、1000未満なら空欄、2000より大きくても空欄、
そうでなければ=1000以上2000未満なら「a」を表示せよ)
とゆぅわけで、後はCOUNTIFで"a"の数を数えると。

2.に関して言えば、nishi6さんの言うとおりで、ピボットテーブルでOKです。
多分分かると思いますが念のため。(大丈夫なら読み飛ばしてください。)


(B列の1行目から順に、作家,a,b,a,c,a,b,c,a,d,a,e,dと入っているとしましょう。アルファベット一文字は作家の名前です。)
データ(D)→ピボットテーブルとピボットグラフレポート
で、ウィザードが出てきて、
分析するデータのある場所は「Excelのリスト/データベース」、作成するレポートの種類は「ピボットテーブル」です。
(ちなみにどちらもそのままそれになってるはずです。)
次へで、使用するデータの範囲を聞かれますので、B列の希望範囲を指定します。
(場合によっては範囲が勝手に指定されています。例では、B1:B13ですね。)
次へで、ピボットテーブルの作成先を聞かれますので、確か下に書いてあったのは、隣の列でよさそうだったので、「既存のワークシート」の「C1」を選んで、次にレイアウトをクリックします。
レイアウトの画面で、「作家」という四角(フィールドって言います)がありますので、これを「行」と書いてあるところと、「データ」と書いてあるところにドラッグします。
(すると、行の上側に色が変わった状態で「作家」、データの欄には、「データの個数:作家」とかかれたものが表示されるはずです。
ちなみに、データの個数になっていない場合は、そこをダブルクリックして、「データの個数」を選んでください。)
これで準備OK!
レイアウト画面をOKボタンで閉じて、完了をクリックすると、表になって完成します。
以上でした。
お礼コメント
golman

お礼率 46% (34/73)

とてもわかりやすい回答をありがとうございました。
初めてピボットテーブルを使いました。思ったような表を作ることができ感謝しています。どうもありがとうございました。お手数をおかけいたしました。
投稿日時 - 2001-11-23 03:58:04
-PR-
-PR-

その他の回答 (全5件)

  • 回答No.1
レベル10

ベストアンサー率 22% (28/127)

1 COUNTIFを組み合わせて使います。 例) =Countif(範囲,>1000)-Countif(範囲,>2000) これで、範囲内の1000以上2000以下のセルの個数が出てくると思います。 2 こちらは どの文字列があるかがわかっている場合では =Countif(範囲,"a") で、その範囲内の a の個数が出ると思い ...続きを読む

COUNTIFを組み合わせて使います。

例) =Countif(範囲,>1000)-Countif(範囲,>2000)

これで、範囲内の1000以上2000以下のセルの個数が出てくると思います。


こちらは

どの文字列があるかがわかっている場合では

=Countif(範囲,"a")

で、その範囲内の a の個数が出ると思います。("a"は他のセル参照でもOK)

ただ、範囲内に何の文字があるかわからずそれらの全ての個数を求める場合は
VBAの力が必要かと思います(^^;
補足コメント
golman

お礼率 46% (34/73)

1の方は教えていただいた式で無事できました。ありがとうございました。
あまりの知識のなさに呆れていることだとは思いますが、ご親切に答えていただいて感謝いたします。
また2の方ですが、文字列がわかっていない状態です。「VBA」ってどういう意味ですか?すみませんが教えてください。
投稿日時 - 2001-11-22 00:57:47

  • 回答No.2
レベル8

ベストアンサー率 26% (11/41)

Microsoft Accessはお持ちじゃないですか? 条件式も複数設定できるし、クエリー作成の際にグループ化、カウント機能を使えば2.のようなデータも簡単に作成できますが。 エクセルではちょっと解りません。ごめんなさい。 ...続きを読む
Microsoft Accessはお持ちじゃないですか?
条件式も複数設定できるし、クエリー作成の際にグループ化、カウント機能を使えば2.のようなデータも簡単に作成できますが。
エクセルではちょっと解りません。ごめんなさい。
お礼コメント
golman

お礼率 46% (34/73)

早速ご回答いただきありがとうございます。
私はMicrosoft Accessは持っていないのですが、エクセルより条件式を複数設定できるとのことですから、今度購入しようと思います。
投稿日時 - 2001-11-22 01:02:17
  • 回答No.3
レベル5

ベストアンサー率 25% (1/4)

どもでーす。 1.の方にはお答えがあるようなので、 (たぶん、COUNTIF関数の部分に「=」が必要(でないと以上にならない)かと思うのですが・・・揚げ足取っちゃって申し訳ありません。汗) 2.の方を一緒に考えましょう! とりあえず下のこと、教えてください。 ひとつ、文字列はひとつのセルに入ってるのかどうか。 ふたつ、カウント結果は降順(数字の多い順)でアルファベット順である必要があ    る ...続きを読む
どもでーす。
1.の方にはお答えがあるようなので、
(たぶん、COUNTIF関数の部分に「=」が必要(でないと以上にならない)かと思うのですが・・・揚げ足取っちゃって申し訳ありません。汗)
2.の方を一緒に考えましょう!
とりあえず下のこと、教えてください。
ひとつ、文字列はひとつのセルに入ってるのかどうか。
ふたつ、カウント結果は降順(数字の多い順)でアルファベット順である必要があ    るのか
みっつ、ローマ大文字のみなのか
補足コメント
golman

お礼率 46% (34/73)

ご回答ありがとうございます。
1.の方のご指摘ありがとうございました。そうですね、=を入れます。
2.の方ですが、アンケート集計をするため、B列に「あなたの好きな作家名」(すべて日本語)が3000行ほど入力されています。ですから理想としてはB列を元にC列に「作家名」、D列に「カウント数」を入れ、それを降順に並べられればと思います。カウント数が降順に並んでいさえすればいいので、同じカウント数の中の順序はどうでもいいのです。ソートは自分でやっても構いませんので、とにかくC列には重複した作家名が表示されないようにしたいわけです。

素人は質問さえもうまくできないのが悲しいです。お手数ですがまたよろしくお願いいたします。
投稿日時 - 2001-11-22 08:52:36
  • 回答No.4
レベル10

ベストアンサー率 22% (28/127)

え~VBAというのは、「Visual Basic for Application」の略で(確か) 簡単に言うと、(この場合は)エクセル専用のプログラミング言語です。 基礎となっているのは「Visual Basic」という言語です。 1--> 数学の基礎が出来てなくてすいません(^^; フォローどうもです 2--> 何の文字かわからない、ランダムに入っているですか・・・     ...続きを読む
え~VBAというのは、「Visual Basic for Application」の略で(確か)
簡単に言うと、(この場合は)エクセル専用のプログラミング言語です。
基礎となっているのは「Visual Basic」という言語です。

1--> 数学の基礎が出来てなくてすいません(^^; フォローどうもです

2--> 何の文字かわからない、ランダムに入っているですか・・・
    とりあえず、 No3の cupidchain さんと同じ事が知りたいでっす。
  • 回答No.5
レベル13

ベストアンサー率 68% (791/1163)

1.について別の方法です。例えば、G2:G11を対象として、  =SUM(IF(G2:G11>=1000,IF(G2:G11<=2000,1,0),0)) として、Ctrl+Shift+Enter で登録します。配列数式を使っています。 2.について、VBAを使うこともないでしょう。   データ→ピボットテーブルと・・・・でピッボットテーブルを使えば直ぐできるでしょう。 ...続きを読む
1.について別の方法です。例えば、G2:G11を対象として、
 =SUM(IF(G2:G11>=1000,IF(G2:G11<=2000,1,0),0))
として、Ctrl+Shift+Enter で登録します。配列数式を使っています。

2.について、VBAを使うこともないでしょう。
  データ→ピボットテーブルと・・・・でピッボットテーブルを使えば直ぐできるでしょう。
お礼コメント
golman

お礼率 46% (34/73)

いろいろな方法があるのですね。使い慣れている人にとっては簡単なことなのでしょうけど、とても勉強になりました。どうもありがとうございました。
投稿日時 - 2001-11-23 03:54:59
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ