2つのデータの比較(突合)について | |
---|---|
[133173] 2つのデータの比較(突合)について- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ ぺこ -(2022/06/02(01:22)) □U R L/ 何方か、アドバイスをお願い致します; 『正解ファイル』が『データ』の中に存在しているか? を、目的としております(データの他の値は見なくてOK) 商品については、名前が異なる為、COUNTIFやVLOOKUPでチェックできるのですが、 状態:〇と値段:100については、どうしても商品Aの状態:〇、値段が引っかかってしまい上手く比較できません。 何か良い比較方法があれば、ご助力をお願いします。 データ 正解ファイル 商品A 商品B 状態:〇 状態:〇 値段:100 値段:100 備考:XXX 商品D 状態:〇 商品B 値段:100 状態:〇 値段:100 備考:AAA 商品C 状態:〇 値段:100 備考:・・・ 商品D 状態:〇 値段:100 |
[133174] Re[1]: 2つのデータの比較(突合)について- ■記事引用/メール受信=OFF■ □投稿者/ ぺこ -(2022/06/02(01:26)) □U R L/ 申し訳ございません。 改行がおかしくなっておりましたので貼りなおします。 <データ> 商品A 状態:〇 値段:100 備考:XXX 商品B 状態:〇 値段:100 備考:AAA 商品C 状態:〇 値段:100 備考:・・・ 商品D 状態:〇 値段:100 <正解ファイル> 商品B 状態:〇 値段:100 商品D 状態:〇 値段:100 |
[133176] Re[2]: 2つのデータの比較(突合)について- ■記事引用/メール受信=OFF■ □投稿者/ マーヤ -(2022/06/02(17:13)) □U R L/ こんにちは〜^^ 業務の関係で投げっぱなしになると思いますが、参考程度ですが、こんなのはどうでしょうか? データがA列にあり、正解ファイルがE列にあるとしています。 B1=COUNTIF($E$1:$E$100,A1) B2=IF(B1=1,COUNTIF(OFFSET($E$1,MATCH(A1,$E$1:$E$100,0),0),A2),"") B3=IF(B1=1,COUNTIF(OFFSET($E$1,MATCH(A1,$E$1:$E$100,0)+1,0),A3),"") B4は参照しないので空欄。 B1〜B4をアクティブにして、下へフィルコピー。 商品、状態、値段の右に全て1が入ったら正解ファイルにデータがあるという数式です。 1でなく、もっとわかりやすくする場合は数式を修正してみてください。 ちゃんと精査してないので数式違ってたらごめんなさい |
[133178] Re[3]: 2つのデータの比較(突合)について- ■記事引用/メール受信=OFF■ □投稿者/ ぺこ -(2022/06/02(19:26)) □U R L/ マーヤ様 回答有り難うございます。 データによっては、4行とは限らなかったりするので コピペは出来そうにないですが、参考にさせていただきます。ありがとうございます |
[133179] Re[4]: 2つのデータの比較(突合)について- ■ / 記事引用/メール受信=OFF■ □投稿者/ ぺこ -(2022/06/02(23:02)) □U R L/ 度々、すみません。 私が正確に質問していなかったのがいけないのですが、 追加でご質問をさせてください;; 目的:正解ファイルが存在すれば良い(その他の項目は不一致でOK) <データ> ※全てA列 商品A ・・・ ・・・ 値段:100 状態:良 ・・・ 商品B 値段:100 状態:良 商品C 値段:100 状態:良 備考:xxx 商品D ・・・ ・・・ 値段:100 状態:良 ・・・ <正解ファイル>※全てE列 商品B 状態:〇 値段:100 商品D 状態:〇 値段:100 データ側の商品間の行が固定ではなく、上手く比較できませんでした; 何か方法等ございました、ご助力頂けると助かります。 宜しくお願い致します。 |
[133181] Re[5]: 2つのデータの比較(突合)について- ■記事引用/メール受信=OFF■ □投稿者/ マーヤ -(2022/06/03(08:58)) □U R L/ こんにちは〜^^ 質問なのですが、まずデータの商品は同一のものはありませんよね? あと、例えば、商品Aには値段、状態のみがあり、商品Bは値段、状態、備考がありなど、商品によって記載事項が変わるという事ですよね? データの並び順は商品が必ず1番上でその下には値段、状態、備考等があると思いますが、この順番は値段、状態、備考とか状態、値段、備考とか順番が変わっている場合がありますか? 私からのレスポンスは遅いと思いますが、ご了承ください。 |
[133182] Re[6]: 2つのデータの比較(突合)について- ■記事引用/メール受信=OFF■ □投稿者/ マーヤ -(2022/06/03(09:18)) □U R L/ 連投すみません。 追加の質問ですが、サンプルでは商品A、商品B・・・となっていますが、 実際の商品は例えば、きゅうり、レタス、トマト・・・など、共通の文字はないですよね? 考えていたのが、同一商品名がなければ、正解ファイルの商品名で検索して、そこから下の1番近い商品という文字を含む行を探して、その間にある文字列が正解ファイルと一致するか?というのを考えていましたが、商品名に同一文字列を含まなければできないと思いまして。 この分も含めて、教えていただければと思います。 |
[133184] Re[7]: 2つのデータの比較(突合)について- ■記事引用/メール受信=OFF■ □投稿者/ ぺこ -(2022/06/03(12:16)) □U R L/ マーヤ様 ご確認ありがとございます(>_<) 商品名が、同一になることはありません。 記載事項のみがかわる感じです。 >正解ファイルの商品bを検索してそこから下の一番近い商品cの間にある文字列が正解ファイルと一致するか? →これが理想的な方法となります(>_<) |
[133186] Re[8]: 2つのデータの比較(突合)について- ■記事引用/メール受信=OFF■ □投稿者/ マーヤ -(2022/06/03(13:50)) □U R L/ こんにちは〜^^ まず、商品と商品の間と認識するために、実際の表ではどうやって商品と判別するのでしょうか? たとえば、八百屋をやっていて、きゅうりとかトマトとかスイカは商品名だとわかりますが、エクセルでは共通点がないので判別ができません。 サンプルでは商品という文字が入っているものが商品という共通点がありますが、実際には商品名に商品という文字が入っていないと思っています。 ですので、商品と商品の間を抜き出すには、商品名はこれとエクセルにわからせる必要があります。 そして、商品以下の説明等の順番が決まっていないのも判別するには手間がかかります。 一応、下記の数式ではどうでしょうか? B1=A1 B2=IF(MID(A2,4,1)=":",B1,A2) 下にフィルコピー C2=IF(AND(A2<>B2,COUNTIF($F$1:$F$100,B2)>=1),INDEX(INDIRECT("E"&MATCH(B2,$F$1:$F$100,0)&":E"&COUNTIF($F$1:$F$100,B2)+MATCH(B2,$F$1:$F$100,0)-1),MATCH(A2,INDIRECT("E"&MATCH(B2,$F$1:$F$100,0)&":E"&COUNTIF($F$1:$F$100,B2)+MATCH(B2,$F$1:$F$100,0)-1),0),1),"") 下にフィルコピー F1=E1 F2=IF(MID(E2,4,1)=":",F1,E2) 下にフィルコピー B列とF列は簡単な数式なのでかすが、商品名以下どこまでがどの商品かを記載しています。 サンプルから商品名でないものは:(全角コロン)が4文字目に入っているという条件です。 C列では商品名〜次の商品名の1つ上までの範囲をF列の所品名と同一のものをマッチングさせています。 同一のものがあったら検索文字が記載され、なければエラーになります。 商品名以下の説明の順番がどのようになっていても検索可能ですが、最初に提示した4行1セットで順番が決まっている場合と比べて数式が複雑です。 また、商品名以外に全角コロンが入っていないものがあったりしたら全然使えませんので、もっと実際の表に近いものを提示しないと、やりとりが無駄になってしまいます。 とりあえず、こんな感じですがどうでしょうか? |
このトピックに書きこむ |
---|