- ベストアンサー
EXCEL関数で部分一致同士を検索する方法
bunjiiの回答
- bunjii
- ベストアンサー率43% (3589/8248)
>※今回は表記のゆれ等でも全て認識したいので、1行目に全てまとめて入力していたのですが、COUNTIFやSEARCHなどを使用することで複数行必要になるかどうかも教えていただけると幸いです。 1行目に対象品目を全て纏めるとCOUNTIF関数で処理するのは難しいようです。 代案として対象品目を1品1セルにすればCOUNTIF関数の加算で判定できます。 =IF(COUNTIF($A6,"*"&B$1&"*")+COUNTIF($A6,"*"&B$2&"*")+COUNTIF($A6,"*"&B$3&"*")+COUNTIF($A6,"*"&B$4&"*")+COUNTIF($A6,"*"&B$5&"*"),"○","-")
関連するQ&A
- Excel関数
Eccel2003を使用して以下のような入力作業を行っております。 A列~C列のセルに「1~10」いずれかの数字を入力して行きます。 入力パターンは (1)A列だけ入力 (2)A列とB列に入力 (3)A列~C列全てのセルに入力 の3パターンです。 複数の列に数字を入力する場合((2)及び(3))、同じ数字を入力することはありません。 【例】 A B C D 1 5 4 1 2 6 3 1 2 4 2 4 5 ・ ・ ・ このとき、A~C列に一つでも該当の数字(ここでは2と4と5)が入力されていた場合に、 ある文言(30文字くらい)をD列に反映させたいのですが、何か良い関数等ありますでしょうか? ※ 上記例の場合、1,3,4行目のD列に文言を反映 例の4行目のように全ての列に該当の数字を入力することもあります。 ご教示頂きたく何卒宜しくお願い致します。
- ベストアンサー
- オフィス系ソフト
- 【Excel】一致するデータの検索
Excel2003を使用しています。 Sheet1のB列の値がSheet2のA列に入力されている値と一致したら、Sheet1のC列とD列の値をSheet2のC列とD列に表示させたく、VLOOKUP関数を使用したところ、Sheet1のB列とSheet2のA列のデータの並び方(順序)が同じではないためか、VLOOKUP関数ではできませんでした。 こういう場合、マクロで処理することは可能でしょうか?可能であれば、どのようにコードを記述すればいいでしょうか? Sheet1のデータは4行目から、Sheet2のデータは6行目から入力されています。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Excel関数
Excel2003を使用しております。 図の左側、A~C列のような、 処理件数・処理者・日付の項目を入力するシートがあります。 別のシートに、E~I列のような、 日ごとに処理者別に処理件数を返したいのですが、 黄色網掛け部分にどういう関数(数式)を入ればよいのでしょうか? 適した関数を教えて頂きたく、何卒宜しくお願い致します。
- ベストアンサー
- その他MS Office製品
- Excel関数
Eccel2003を使用して以下のような入力作業を行っております。 A列~C列のセルに「1~10」いずれかの数字を入力して行きます。 入力パターンは (1)A列だけ入力 (2)A列とB列に入力 (3)A列~C列全てのセルに入力 の3パターンです。 複数の列に数字を入力する場合((2)及び(3))、同じ数字を入力することはありません。 【例】 A B C D 1 5 4 1 2 6 3 1 2 4 9 1 3 ・ ・ ・ このとき、A~C列に一つでも奇数が入力されていた場合に、 ある文言をD列に反映させたいのですが、何か良い関数等ありますでしょうか? ※ 上記例の場合、1,3,4行目のD列に文言を反映 例の4行目のように全ての列に奇数を入力することもあります。 ご教示頂きたく何卒宜しくお願い致します。
- ベストアンサー
- オフィス系ソフト
- Excel関数2つの項目が一致する場合・・・
誰か助けて下さい。 EXCEL2002を使い、3つの項目が一致した場合その合計を出す方法。 数百行に渡り A列には、日付 B列には、商品項目コード c列には、金額 日付が同じもの同士で、尚且つ商品項目コードが同じ時の金額の合計を出したいのですが どの関数を使っていいのかわかりません。 どうぞ、おしえてください。
- ベストアンサー
- オフィス系ソフト
- Excel関数、VBA
A列に数字を入力するとB列に合計が出るようにしたい。 但し、条件があります。 数字の入力範囲はA1からA20まで。 B列の合計はA列の数字が連続した部分の最後に表示。 例 A列 B列 10 10 10 30 20 20 10 30 40 上記のように数字の入力は1行だけの時もあり、5行の時もあるので次の空欄までの合計をB列に表示したい。 VBでも関数でも構いませんので、どなたか詳しい方教えて下さい。
- ベストアンサー
- Visual Basic
- エクセル マクロ 複数条件と部分一致
1対多数の検索 と 複数条件(部分一致と全部一致)のためコードがよくわかりません。 例えば、xlpart、Match、Index、Offset を使い下記の処理ができる方法はありますでしょうか。 下記A~C列のリストがあります。(10000行程度) (Sheet1) A B C 1 0075926 VU SerialA 2 0623450 VU SerialA ・ 3 0002356 WM SerialA 4 0157592 WM SerialB ・ 5 0023456 WM SerialB (・・・以下10000行程度続く) (1) Sheet2の検索値A1に部分一致するものを、Sheet1のA列から選ぶ。 (2) 複数の検索結果値がでてしまうので、さらにSheet2のB1と「全部一致」する ものをSheet1のB列から選ぶ。 (3) 上記(1)、(2)の条件を満たすものをSheet1のA列から1つ選ぶ。さらにその行の C列を転記する。(複数該当する場合は上位記載のものでかまいません。) ※数値はエクセルの書式設定で文字列にしてあります。 (検索前のSheet2) A B C 1 7592 WM 2 2345 VU (以下10000行程度続く) (検索後のSheet2) A B C D 1 7592 WM 0157592 SerialB ※7592は、Sheet1のA4に該当する。 2 2345 VU 0623450 SerialA ※2345は、Sheet1のA2に該当する。 (以下10000行程度続く) 部分一致の後の全部一致の複合的なコードの組み方がわかりません。 繰り返し処理(ForやLoop)をよく理解していないからだと思います。どなたかご教示くださいますでしょうか。大変困っておりよろしくお願いいたします。(WindowsXp、Office2003)
- ベストアンサー
- オフィス系ソフト
- EXCEL関数で教えてください。
B列に3行おきに名称があります。 C列にその名称ごと(3行ごと)のロット数 D列にその名称ごと(3行ごと)の値A E列にその名称ごと(3行ごと)の値B が入力されています。 そのデータを名称ごとに1行にまとめる場合の関数を教えてください。
- ベストアンサー
- Excel(エクセル)
- 【Excel】関数でできますか?
Excel2003を使用しています。 E列→摘要欄 H列→借方金額 I列→貸方金額 K列→差引残高 1行 あ 100 2行 い 100 3行 う 500 4行 5行 月 計 600 100 500 6行 7行 8行 か 300 9行 き 400 10行 く 500 12行 月 計 900 300 1100 13行 累 計 1500 400 : : というふうに金額が入力されているとき、K列の差引残高に E列に“月 計”と入力されたら、 [直前の月 計の差引残高セル]-[借方金額]-[貸方金額]という 数式を入れたいのですが、どんな関数を使えばできますか? 上記の例でいくと、 K12セルに[=K5+H12-I12]の計算結果が表示されるように したいのですが。。。 よろしくお願いします。
- 締切済み
- オフィス系ソフト
お礼
COUNTIFを使った形でのご解答ありがとうございました。 やはり1行目に全ての食材をまとめるという方法がよくなかったみたいですね。 そこで取り掛かってみたのですが、COUNTIFでは8項目以上ではうまく行かないこともあるみたいです(No.4の回答者様のご指摘も踏まえ)。 それでも、方法としてこのようなやり方があるということを勉強させていただきました。ありがとうございました。