• ベストアンサー

いつもお世話になっております。

いつもお世話になっております。 エクセルのcount関数について質問させていただきます。 数値が入っているセルを範囲指定する際、すぐ隣に数値が入っているのに、そこを含まずに指定すると、エラースマートタグの「このセルにある数式は、隣接したセル以外の範囲を参照します」の表示が出ますが、同じ式で1か所文字列に変更するとエラーが消えます。 文字列を削除してセルを空白にしてもエラーは再度出ます。この違いがよくわかりません。 どういう意味なのか教えていただけないでしょうか。よろしくお願いします。 画像の数式は、いずれの行もB列からE列まで選択してcount関数をF列に入れています。

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

  • ベストアンサー
  • conanthe
  • ベストアンサー率65% (114/175)
回答No.1

エクセルは数値が連続している場合、同じ種類の数値だと判断するようですね。「A列からE列まで数値があるのに、A列をカウントせずにB列からカウントしていいのですか?」と親切に聞いてくるわけです。 カウントする範囲の途中の空白(C列)は未入力エリアと判断しているのでしょう。これから入力する予定だということで、数値と同じ扱いになるわけです。 文字列は項目名などに使われますから、それがカウント範囲の途中にあるということは連続したデータではないと判断され、A列が含まれなくても問題にしないのでしょう。「a」があるC列の左と右では違う種類の数値だと判断されるわけです。

rian_2005
質問者

お礼

回答いただきありがとうございます なんとなくわかったような気がします

関連するQ&A

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

    こんばんは、COUNT関数についてお伺いします。 たとえばA列に関数(SUMなど)の数式が入っています。そのA列を範囲指定してCOUNT関数をしたところ、数値が現れているセルのみをカウントしたいのですが、空白の数式が入っているセルもカウントしてしまいます。数値を示しているセルのみをカウントしたいのですが、うまく行きません。 どうすれば解決できますか、教えていただけないでしょうか。

  • MIN関数で空白セルを無視したいのですが

    Excel2010です。 新たなデータを入力する度に数式を訂正しなくても良いように年間のデータ記入表を作成してあります。 今日現在での最高値と最低値を常に表示されるようにしたいのですが、最低値が0となってしまいます。数値以外のデータは無視されるハズなのに空白セルまでも対象範囲としているため 0 となると思い、 =MIN(A1:A365,"<>0") としてみたのですがエラーでした。 対象範囲のセルを数値以外の文字列とかにしておけば・・・とも思ったのですが、入力したデータが数値と認識されないのではこれまた困ります。 空白セルは文字列でそこにデータ(数値以外は入らない列) が入力されたら数値に変換されるとかの関数は・・?と調べてみたのですが、自分のレベルでは限界でした。 なにか方法があればご教示ください。 (実際には複数のシートを参照して得られたデータをさらに細分化した形式で、列はすでに60ほどあり他のシートで絶対参照としているものが多く、行以外の加減は難しい実情があります)

  • 「数式は隣接したセルを使用しません」について

    Excel2003です。 累計の関数で、E4に、=SUM($D$4:D4)   (数値はD4から下へ記入。3行目までは、いろんな文字が書いてある) の関数を入れて、下にコピーすると、「数式は隣接したセルをしようしません」と、エラーマークが続きます。 なぜでしょう? 式を、=SUM($D$1:D4)にすると、エラーマークは出ません。 一応調べたのは、隣の数値を参照しない場合、エラーマークが出るようですが、累計の場合は、デフォルトでは、どうしてもエラーマークが出てしまうのでしょうか? ご存知の方、よろしくお願いします。

  • エクセルでカウントする関数

    質問させてください やりたいことは 例えば数式 =IF(***>**,E5,"") が1行~10行にコピーしてあり 論理式に適合したものは参照セル値を返します 適合しないものは空白です さて 適合したものを数えてみようと思ったのですfが COUNT関数 COUNTA関数などやりましたが 数式のあるものも数えてしまい よって全部の行がカウントされていまいました 教えてください よろしくお願いいたします

  • エクセル関数の範囲指定を、座標数値で指定したい

    address関数とindirect関数で、行・列を数値で指定して、セルの値が求められますが、同じように行・列の数値を4つ使って範囲の指定をしたいのですが、どのような関数を使えばよいでしょうか? 具体的には、=MATCH(A1,範囲,1)の範囲を、2組の座標の数値で指定したいのです。

  • こんにちは いつもお世話になっています

    こんにちは いつもお世話になっています エクセル2003を使っています。 特定の文字列以降の文字列を(特定文字列自身も含めて)削除する処理に関して質問します。 特定の文字列は二つあり、【@】と【変化】です(【 】も含みます)。 この二つの文字列はバラバラに出てきます。一方だけがでてくるセル、両方出てくるセル、両方出てこないセル、があるという意味です。これらはB列だけにあります。  現在のやり方は  「*」を各特定文字の後ろに付けて、置換機能で削除しています(「【@】*」、「【変化】*」みたいに)しかし、二つの文字列に対して別々にやるようなので、記録マクロで一括で処理しています。  ここで質問なのですが  置換後の文字列は空白にしているのですが、スペースが残ってしまいます。つまり、処理後にエクセルの書式メニューから「行」-「自動調整」をしてもスペースをつめられない状態です。どうすればスペースをつめられるでしょうか。  あるいは、置換でなく、適当なマクロを紹介していただけると助かります。  よろしくお願いします。

  • 数式の計算結果により表示されたセルを数える関数を教えてください

    Excel2003です。 「=COUNTA(範囲)」で文字や数値、式などのデータが入力されているセルを数えることができますが 数式の計算結果により表示された文字や数値の入ったセル(数式の計算結果で空白のセルを数えない)を数える関数を教えてください  

  • excel 関数にて文字を0として認識させる方法

    数式の中に数字以外の文字が入ると#VALUE!が出ます。 ヘルプを参照すると、 「文字列が正しいデータ型に変換されません。必要な演算数や引数について、数式または関数が正しいかどうか、また、数式で参照するセルの値が有効かどうかを確認します。たとえば、セル A5 に数値が入力され、セル A6 に "なし" という文字列が入力されている場合、数式 =A5+A6 は、エラー値 #VALUE! を返します。」 これを解決させるにはどうしたらいいでしょうか? 上の例ですと、"なし"と打ち込んだ場合0として認識させるようにしたいです。

  • Excelのことですっごく困ってます!!!!

    エクセルでオートフィル機能を使うと連続データの入力や文字列などをコピーしたり出来ますよね!! そこで質問なんですが、数百の数値が入力されていて指定したセルに数式を入力してオートフィル機能を実行すれば簡単に全部にその数式が適用されるとは思うのですが、数百の数値の中に文字列が入力されている場合「0」か「エラー」が入力されてしまうと思うのですが、文字列だけを飛ばして数値入力されている行だけに数式を適用されるようにすることは出来ないのでしょうか???? データが限りない数あります。文字列の行に入力されてしまう「0」や「エラー」を消すだけでもかなりの数になってしまうのです。期限のあるものなのですごく困ってます!! エクセルの詳しい方大至急助けてください!!!!!!!!!!

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

    1、 例えば数式を入力しいるセルに間違って数値などを入力してしまうと、元々あった数式は書き変わってしまいますよね。 こういう場合、固定的な数値や数式が入力されているセルに間違って入力した場合でもセルの内容が書き変わらないように固定する方法はあるのですか? 2、 数式や関数が入力されているセルでに、まだ参照先のセルに数値が入力されてないために、引数として0やエラーのようなマークが出るのですが こういう時に参照先のセルが未記入のときに空白に(何もセル内に表示しない)するにはどうすればいいのですか? 初歩的な質問かと思いますがよろしくお願い致します。

専門家に質問してみよう