• ベストアンサー

EXCELで 文字列に一致しない場合の合計

以下の表からEXCELの関数でA列から「東京都」の文字列を含む場合のB列の合計値と含まない場合のB列の合計値を出す関数を教えてください。 A      B 東京都港区 200 東京都北区 124 東京都大田区 100 横浜市緑区 99 川崎市幸区 90

  • hikson
  • お礼率41% (139/338)

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

  • ベストアンサー
  • jindon
  • ベストアンサー率43% (50/116)
回答No.3

東京都を含まない合計の別解として、 こういうのもあります。 =SUMIF(A:A,"<>"&"東京都*",B:B)

hikson
質問者

補足

なるほど、"<>"を使えばよいのですね。目から鱗です。

その他の回答 (6)

  • jindon
  • ベストアンサー率43% (50/116)
回答No.7

matrix4さん 確かにそうですね。 SUMIFは条件範囲の行数が集計列の行数を決定するようです。 =SUMIF(A:A,"<>"&"東京都*",B1:B1) としても、B列全行を集計しますね。 気を付けないといけませんね。

  • matrix4
  • ベストアンサー率16% (118/704)
回答No.6

位置がずれていました。   A         B      C 東京都港区    200 東京都北区    124 東京都大田区  100 横浜市緑区    99 川崎市幸区    90           189        378 として、B6に、 =SUM($B$1:$B$5)-SUMIF(A:A,"東京都*",B1:B5) 総合計-”東京都”含む=189ですが C6に、 =SUMIF(A:A,"<>"&"東京都*",B1:B5) 東京都以外の合計とすると 378となります ここで、前項、189のセルを削除すると C6が189に訂正されます。 B1:B5とB6に掛かっていないのですが B6を削除しないと、合計が違います ----------------------------------------------- 理由は、C6の A:Aとしてあることと、 B1:B5としても、A:AがB6以降も掛かっている ようです。 これは、なぜでしょう・・?

  • matrix4
  • ベストアンサー率16% (118/704)
回答No.5

余談ですが、   A       B    C 東京都港区  200 東京都北区  124 東京都大田区  100 横浜市緑区  99 川崎市幸区  90     189     378 として、B6に、 =SUM($B$1:$B$5)-SUMIF(A:A,"東京都*",B1:B5) 総合計-”東京都”含む=189ですが C6に、 =SUMIF(A:A,"<>"&"東京都*",B1:B5) 東京都以外の合計とすると 378となります ここで、前項、189のセルを削除すると C6が189に訂正されます。 B1:B5とB6に掛かっていないのですが B6を削除しないと、合計が違います ----------------------------------------------- 理由は、C6の A:Aとしてあることと、 B1:B5としても、A:AがB6以降も掛かっている ようです。 これは、なぜでしょう・・?

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

配列数式による別方法 (例データ) 東京都港区 200 東京都北区 124 東京都大田区 100 横浜市緑区 99 川崎市幸区 90 東京都北区 50 横浜市緑区 30 東京都武蔵野市 10 (式) どこか答え(東京都の計数合計)を指すセルに =SUM(IF(ISERROR(FIND("東京都",A1:A8)),0,B1:B8)) といれて、SHIFTキーを押しつつ、CTRLキーを押し、且つENTERキーを押す。 (結果) 484 東京都以外は全体の合計=SUM(B1:B8)から引けば良い。略。

回答No.2

こんばんは。 「東京都」を含む合計値をD1、含まない合計値をD2セルに出すとして、 D1は =SUMIF(A:A,"東京都*",B:B) D2は =SUM(B:B)-D1

  • yumgyumg
  • ベストアンサー率30% (219/712)
回答No.1

・東京都を含む場合の計算 =SUMIF(A1:A5,"東京都*",B1:B5) ・東京都を含まない場合の計算 =SUM(B1:B5)-SUMIF(A1:A5,"東京都*",B1:B5)

hikson
質問者

お礼

なるほど、よく分かりました。ありがとうございます。

関連するQ&A

  • エクセルの配列

    エクセルの配列を使用しての関数がうまく出来なくて困っています。    A   B  C 1  1  1  東京都墨田区 2  1  1  東京都神奈川区 3  1  2  東京都杉並区 4  1  2  神奈川県横浜市 5  1  3  神奈川県川崎市 6  1  3  東京都多摩市 7  2  1  岩手県 8  2  1  大阪府 9  3  2  兵庫県 10  3  2  京都府 と並んでいます。 ここでA列=1 且つ B列=1又はB列=2 且つ C列が"東京都"という文字を含んでいる の総計を計算したいのですが(上の状態ならば「3」) {=SUM(SUMPRODUCT(IF(A1:A10=1,1,0))*(IF(OR(B1:B10=1,B1:B10=2),1,0))*(ISNUMBER(FIND("東京都",C$1:C10))))} と関数を入れても正しい値が出ません。どこがおかしいのでしょうか? 作業列を使わずに求めたいです。 どなたかご教授宜しくお願いします。

  • エクセル2003によるsumifに複数バージョン

    エクセル2003で以下の条件の関数を作成したいと考えております。 教えて頂けないでしょうか? A列、B列、C列、D列があり。 求めたいのは、【A列が「100」に等しい かつ (B列に「東京」という文字が含まれる または C列に「横浜市」が含まれる)場合のD列の和】になります。 A    B    C     D 100 東京都  三鷹市  1200 100 神奈川県 横浜市  2000 200 東京都  三鷹市  1200 100 京都    京都市  1000 100 神奈川県 ああ横浜  100 の場合、計算したいセルには1200+2000+100の3300が表示されるようにしたいです。 SUMIF関数を使いましたが、うまくできません。 また2007ではない為SUMIFS関数もない状態で困っています。 教えて頂けませんでしょうか?

  • エクセル 関数 合計の出し方

    困ってます。ぜひ皆様のお力をお貸し下さい。 内容は下記になります。     A      B     C   1 05/02/01 東京都 \50000 2 05/02/05 千葉県 \70000 3 05/02/13 埼玉県 \80000 4 05/02/24 東京都 \40000 5 05/03/05 東京都 \30000 6 05/03/08 千葉県 \50000 7 05/03/11 山梨県 \70000 8 05/03/15 東京都 \60000 上記内容にて、Aの列で「2005年2月」、Bの列で「東京都」、Cの列ではAとBの検索合計数字(今回は\90000)が表示できる関数を知っている方教えてください。 宜しくお願い致します。

  • ゴルフボールの名入れについて(検索済み)

    地域のところか迷ったのですが、こちらに詳しい方が多いかと思い書き込みさせていただきます。 お得意様に名前入りゴルフボールをプレゼントしたいのですが、どこのSHOPがお勧め&早く対応してくれるでしょうか? Webで調べると早いところで1週間もかかるのですが、そんなものなのでしょうか? 希望する地域は下記です。 東京都 港区/目黒区/品川区/大田区 神奈川県 川崎市川崎区/幸区 横浜市(横浜駅周辺) よろしくお願いします。

  • Access2003 文字数の合計について

    複数のフィールドに入力されている文字列(数値や文字)の文字数をカウントし, そのレコードごとの文字数合計を出したいのですが、「エラー」になってしまい うまくできないので、アドバイスを頂きたいと存じます。 ========================================================================= ☆1つのレコードA~Eのフィールドがあり、全角・半角の文字および英数字のデータが混在しています。  なお、データの入っていない空欄がところどころにあります。 [手順1] まず、フィールド内にある空白を除くためReplace関数を使って置換するため フィールドへ以下の式を入力します。 B1: Replace([B]," ", "") D1: Replace([D]," ", "") (例) [ID]  [A]         [B]       [C]       [D]            [E]     1  東京都   港区 ○○1丁目  1-2-3   ●×マンション 101  ○○様方 2  神奈川県  横浜市○○○町   10-10    NULL           NULL 3  千葉県   千葉市 ○○○町  NULL    NULL            ○○様方 ========================================================================= [手順2] 空白を取り除いたフィールドの文字数をカウントするためLen関数を使ってカウントするため フィールドへ以下の式を入力します。 文字数: Len('' & [A] & [B] & [C] & [D] & [E]) (例) [ID]  [A]         [B1]       [C]       [D1]           [E]     [文字数]   1  東京都   港区○○1丁目   1-2-3   ●×マンション101   ○○様方     29 2  神奈川県  横浜市○○○町   10-10    NULL           NULL      16 3  千葉県   千葉市○○○町   NULL    NULL           ○○様方     14 ========================================================================= [手順1]~[手順2]を行い、文字数フィールドに合計値が表示されるようにしたいのですが、 [手順1]のクエリ実行でフィールド[D]の空欄に「#エラー」が表示されてしまい、 以下のとおり、[手順2]で文字数を出すことができませんでした。 (例) [ID]  [A]         [B1]       [C]       [D1]           [E]     [文字数]   1  東京都   港区○○1丁目   1-2-3   ●×マンション101  ○○様方     29 2  神奈川県  横浜市○○○町   10-10    #エラー        #エラー     #エラー 3  千葉県   千葉市○○○町   NULL    #エラー        ○○様方     #エラー ========================================================================= 上記のようなエラーを出さずに、文字数合計をしたいので、アドバイスをいただきたいと存知ます。 よろしくお願いいたします。

  • エクセルでA列にある文字が含まれている時、そのB列に固定文字を追加したい。

    エクセルでA列にある文字が含まれている時、そのB列に固定文字を追加したい。 例) A列に東京の文字があれば、そのB列に固定文字を追加する。   A       B 1 東京都港区 2 大阪府 3 東京都    B列の元文字      2 大阪府 ※ B列にすでに文字があるときは、固定文字を前に追加したい。例)固定文字+B列の元文字 ※ B列に文字がなければ、固定文字のみを入れたい。 実行例   A       B 1 東京都港区 固定文字 2 大阪府 3 東京都    固定文字 B列の元文字  エクセルマクロでできる方法を教えてください。 宜しくお願い致します。

  • 複数の文字列のいずれかが含まれていたらTRUEを返す関数について

    複数の文字列のいずれかが含まれていたらTRUEを返す関数について エクセル2003を使用しています。 B列に例えば住所が入力されていて、「東京都北区」「千代田区」「東村山市」等いくつかの文字列のいずれかが含まれていたら、A列にTRUEを返すということをしたいのですが方法がわかりません。 単純なことのような気がするのですがどうしても思いつきません。よろしくお願いいたします。

  • 住所から「区」を抜き出すには

    いつもお世話になっています。 Excelで「区」を抽出する関数を教えていただけませんでしょうか。 幾つか調べましたが、参考にしながらも上手く作る事ができませんでした。 神奈川県川崎市幸区●●●●●123456 ⇒ 幸区 東京都港区●●●●●●123456 ⇒ 港区 そして、市があって区が無い場合は「市」を抽出したいです。 神奈川県大和市●●●●●●123456 ⇒ 大和市 よろしくおねがいいたします。

  • 検索2列で一致した個数を表す関数

    エクセル2000にある表1を元に表2を作成しようとしています。 表1 A列:「都道府県」 B列:「市区町村」 C列:「フラグ」 表2 D列:「都道府県」 E列:「件数」 F列:「フラグ数」 表1は既に値が入っていて、ある条件を見たすとC列(フラグ)に"○"がつきます。レコード自体が増える可能性はありますが、増える場合は一番下の列に追加される形で増えます。 表2はD列は既に値(都道府県名)が入っていて変わることはありません。E列とF列を関数で制御したいと思っています。(マクロは使用不可) E列は表2のE列に一致するA列の個数 F列はEの個数の中でC列のフラグが"○"の個数です。 E列は「COUNTIF」で書けましたが、 F列の関数が分かりません。 分かる人がいましたら、教えて下さい。 よろしくお願いします。 <表1>   A列   B列    C列   都道府県 市区町村  フラグ   --------------------------- 1 東京都   新宿区 ○ 2 東京都   豊島区 3 東京都   渋谷区 4 神奈川県  横浜市  ○ 5 神奈川県  厚木市  ○ <表2>   D列   E列    F列   都道府県 件数   フラグ数   ----------------------------- 1 東京都  3     1 2 神奈川県 2     2

  • 文字列を分割したい。

    (A1)のセルにある文字列は、数個の文字列をスペース(半角)を開けて配置しています。 (2行目以下も同様の多種の文字列があります。) サンプル 「学校 東京 神奈川県横浜市 ABC アメリカ」 これを、 1行目のセルに関数を用いて、 (B1)に「学校」 (C1)に「東京」 (D1)に「神奈川県横浜市」 (E1)に「ABC」 (F1)に「アメリカ」 と表示したいのです。 関数で処理できましたら、その関数式を教えてください。 関数で処理できない場合は、マクロを教えていただければありがたいです。 よろしくお願いします。 ※エクセルの「区切り位置]機能を試しましたが、うまくいかないようです。

専門家に質問してみよう