• 締切済み

Excelで、countif関数の範囲指定でシート名指定をするとき、セル参照にしたい

Excelのcountif関数の対象範囲に指定するシート指定名に、他セルに記入した文字列を使いたいのですが、うまくいきません。 例えば、Xシートの$A$1:$A$20の範囲内の”出席”文字列数を別シート上で計算させたいのですが、ストレートにやれば、    =countif(`Xシート`!$A$1:$A$20, "出席")    となります。 これを、A1セルで、Xシート という文字列を記述した上で、別セルにて、    =countif(A1!$A$1:$A$20,"出席") のように記述したいのです。indirect関数はうまくいきませんでした。どなたか、ご教授をお願いします。

みんなの回答

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.6

NO1です。 >#REF! のエラーになってしまいます ⇒A1に入力されているシート名が存在しないからだと思いますので、文字列(シートタブ名にスペースの混入等)を確認して下さい。    因みにシート名がCOUNTIF関数の検索範囲であるが問題ないでしょうか。

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

回答No.2です。 A1セルにはシート名がなければなりませんが、シート名は例えばシート1でしたらSheet1と入力する必要があります。シート見出しに表示されている文字列を間違えなく(半角全角を含めて)A1セルに入力することが必要です。

  • turuzou
  • ベストアンサー率33% (15/45)
回答No.4

=COUNTIF(INDIRECT($A$1&"!A1:A20"),"出席") 単純な入力ミスのように思えますが? A1に入力した Sheet名が存在していないのでは? (全角と半角の違い等) Excelのヘルプより ・・・適切なセル参照を指定していないと、エラー値 #REF! が返されます。 ・・・参照先のブックを開いていない場合、INDIRECT 関数は、エラー値 #REF! を返します。

  • a987654
  • ベストアンサー率26% (112/415)
回答No.3

no2の方の回答の通りですが、A1セルのシート名の前後を シングルコートにて囲い 'shieet2' のようにしてみたら?

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

次のようにすればよいでしょう。 =COUNTIF(INDIRECT($A$1&"!$A$1:$A$20"),"出席")

shinogon_1980
質問者

補足

ご回答ありがとうございます。しかし、こちらでも、#REF! のエラーになってしまいます。多分、indirect関数がエラーを起こしています。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

一例です。 =countif(INDIRECT(A1&"!A1:A20"),"出席")

shinogon_1980
質問者

補足

ご回答ありがとうございます。しかし、#REF! のエラーになってしまいます。多分、indirect関数がエラーを起こしています。