中小企業の働き方改革をサポート>>

ExcelのCOUNTIFを使って集計をしています。
「Log」とういうシートのデータを固定で範囲指定(オートフィルで範囲が変わってしまうため)し、その中に「Sheet1」のA列のデータ(文字列:氏名)といくつ合致しているかを集計しようとしています。
=COUNTIF(Log!$B$7:$B$510,"*A1*")
上記数式をG1に入力しオートフィルでコピーしてもコピー先の数式は何も変わりませんでした。
=COUNTIF(Log!$B$7:$B$510,"*A2*")と手入力し再度コピーすると
・・・"*A1*"、・・・"*A2*"、・・・"*A1*"、・・・"*A2*"となるだけでした。
どうすればオートフィルでA1,A2,A3…となってくれるでしょうか?
もし他の(簡単な)方法があれば教えていただければ幸いです。

使用ソフト:Excel2002

よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

一例です。


=COUNTIF(Log!$B$7:$B$510,"*"&A1&"*")
    • good
    • 1
この回答へのお礼

mu2011さん

早速回答していただきありがとうございました。
上記の数式でばっちりできました!!

お礼日時:2011/05/17 15:11

完全一致なら


=COUNTIF(Log!$B$7:$B$510,A1)
部分一致なら
=COUNTIF(Log!$B$7:$B$510,"*" & A1 & "*")
    • good
    • 1
この回答へのお礼

mshr1962さん

回答していただきありがとうございました。
一致の部分も気にしていただきありがとうございました。
上記の数式でうまくいきました。

お礼日時:2011/05/17 15:15

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QEXCEL・複数条件がある場合のCOUNTIFの書き方

エクセルである条件に合致する件数を調べたい場合、普通COUNTIFを使うと思います。これだと普通1つの条件しか書けないと思います。

というか書き方が分からないので、仕方がないのでたくさん並べて+で足すなどの苦肉の策で対処しています。

が、「ある条件」が5個もあるので長くなり汚く、いかにも素人っぽいので何とかしたいと思っています。

VBAで関数を自作することは出来るので、書いてもいいのですが、その前にこのくらいエクセルの関数で何とかできるはずだと思うので、この辺のことが詳しい方に教えていただきたいと思っています。

よろしくお願いします。

Aベストアンサー

OR条件の場合
=COUNTIF(範囲,条件1)+COUNTIF(範囲,条件2)
AND条件でも同じセルの数値From-Toの場合
=COUNTIF(範囲,条件1)-COUNTIF(範囲,条件2)
※結果の大きい方が条件1になります。例 =COUNTIF(A1:A10,">=1")-COUNTIF(A1:A10,">10")

上記以外の場合
方法1.SUMPRODUCT関数を使う
=SUMPRODUCT((条件1)*(条件2)*....*(条件N))
※条件は(A1:A10>=1)とかISNUMBER(A1:A10)とかでTRUE/FALSEの結果が表示されるものならOK
※条件に使う範囲はずれていてもかまいませんが、範囲の行列の数(セル数)は同じにしなければいけません。

方法2.配列数式を使う
=SUM(IF((条件1)*(条件2)*...*(条件N),1,0))
と入力してCtrl+Shift+Enterで確定する。

方法3.DCOUNT関数を使う
項目名1 項目名2
条件1  条件2
のような条件範囲を作成した上でDCOUNT(カウントする項目の範囲,データの全範囲、条件範囲)で検索できます。
※詳細はヘルプをご覧ください。

OR条件の場合
=COUNTIF(範囲,条件1)+COUNTIF(範囲,条件2)
AND条件でも同じセルの数値From-Toの場合
=COUNTIF(範囲,条件1)-COUNTIF(範囲,条件2)
※結果の大きい方が条件1になります。例 =COUNTIF(A1:A10,">=1")-COUNTIF(A1:A10,">10")

上記以外の場合
方法1.SUMPRODUCT関数を使う
=SUMPRODUCT((条件1)*(条件2)*....*(条件N))
※条件は(A1:A10>=1)とかISNUMBER(A1:A10)とかでTRUE/FALSEの結果が表示されるものならOK
※条件に使う範囲はずれていてもかまいませんが、範囲の行列の数(セル数)は同じにしな...続きを読む

Qエクセルでの指定文字 カウントについて

エクセルで並んだデータでの指定した名前だけの個数をカウントするにはどうすればいいのでしょうか?

山田 高橋 佐藤
高橋 梅田 赤田
 西 山田 梅田
佐藤 山田 梅田

名前が並んだデータで「高橋」という名前が何個あるのかをカウントしたいのですがどうすればいいのでしょうか?

Aベストアンサー

 データは入力されているセルの範囲を「A1:C4」とすれば、

=COUNTIF(A1:C4,"高橋")

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

Qエクセルで条件に一致したセルの隣のセルを取得したい

下のような「得点」という名前のシートがあります。
(「田中」のセルがA1です。)

 [ 田中 ][ 10 ][ 200 ]
 [ 山田 ][ 21 ][ 150 ]
 [ 佐藤 ][ 76 ][ 250 ]
 [ 鈴木 ][ 53 ][ 350 ]

別のシートのA1セルに、「佐藤」と入力すると、

 [ 佐藤 ]

「得点」シートから「佐藤」の列を見つけて、B1、C1に

 [ 佐藤 ][ 76 ][ 250 ]

のように表示させたいのですが、B1、C1にはどのような式を書けば良いのでしょうか。
「得点」シートでは氏名が重複する事はありません。
IF文を使うと思うのですが、いまいち良く分かりませんでした。

よろしくおねがい致します。

Aベストアンサー

こんにちは!
VLOOKUP関数で対応できます。
IF関数と併用すればエラー処理が可能です。

Excel2007以降のバージョンであれば
B1セルに
=IFERROR(VLOOKUP($A1,得点!$A:$C,COLUMN(B1),0),"")
としてC1セルまでオートフィルでコピー!
そのまま下へコピーすると行が2行目以降でも対応できます。

Excel2003までの場合は
=IF($A1="","",VLOOKUP($A1,得点!$A:$C,COLUMN(B1),0))

としてみてください、m(_ _)m


人気Q&Aランキング

おすすめ情報