• ベストアンサー

エクセルでどの関数を使えば・・・

A-1から(872/65)(852/243)みたいな任意の数字が縦に沢山入力されています。 B-1にこれも数字(整数)が入力されていますA列と同数! この状況でA-1の872、852だけを検索してB列の整数を自動集計する関数はありますか?

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.3

=SUMPRODUCT(((MID($A$1:$A$100,2,3)="872")+(MID($A$1:$A$100,2,3)="852"))*($B$1:$B$100)) 一応、上記の式でA1:B100の範囲を計算できます。 SUMPRODUCT関数は範囲の積の和を求める関数ですが 複数条件の集計やカウントにも使用できます。 (MID($A$1:$A$100,2,3)="872") でA1:A100の2桁目から3文字が872の場合、TRUE(1)を返します。 (どちらでもない場合はFALSE(0)) 同様に852の結果をOR条件(+)にすることで、 872または852の場合、TRUE(1)になります。 それにB1:B100の数値をかけることで、該当する数値のみ集計できます。 条件が872だけの場合は =SUMPRODUCT((MID($A$1:$A$100,2,3)="872")*($B$1:$B$100)) としてください。 集計する範囲で式を修正してください。

その他の回答 (3)

  • dejiji-
  • ベストアンサー率38% (327/858)
回答No.4

(872/65)となっているのですか。それとも括弧は無しでしょうか。 どちらにしても、A列をコピーして、B列とA列の間に貼り付け、新たなB列を選択して、データ→区切り位置→次へで、区切り文字に/を入れOKとすると/前後が分かれます。 これで872なり852をSUMIFで集計する方法もあると思います。このときの検索条件のときに"(872"となるか872(又は"872")になるか変わります。

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

たった8行しかない例で説明します。 A1:B8に 872 1 988 2 872 3 331 4 872 5 123 6 751 7 872 8 があるとして A列の872の行のB列の集計は =SUMIF(A1:A8,872,B1:B8) で出ます。872が文字列なら"872"としても、どちたでも よいようです。数の場合も"872"でもよいようです。 答えは1+3+5+8=17となります。

  • arukamun
  • ベストアンサー率35% (842/2394)
回答No.1

B列はA列のxxx/yyyのxxx部分を抜き出せば良いのですか? であれば、B1セルに =LEFT(A1,FIND("/",A1)-1) をコピペして、更にB1をコピーして、必要なだけB列にペーストしてください。 >この状況でA-1の872、852だけを検索してB列の整数を自動集計する関数はありますか? が何を言われているのか解りにくいので、もう少し補足してください