エクセル の学校
8.一覧 9.HOME
1.Top 2.Last

[[20240423132534]]

[ 初めての方へ | 一覧(最新更新順) |

|
| 全文検索 | 過去ログ | エクセルの学校HOME ]

 

『一括でコードを紐づけたいのですが、、、』(EC初心者)

この4月にECサイトを運営する部署に異動になったのですが... 膨大な量の商品コードを一括で紐づけできたらと思い投稿しました。

A列      B列 商品コード   関連商品コード AAA00001    AAB0001 AAA00002    AAC0001 AAA00003    ABA0002 AAA00004    BBA0002 AAA00005    VVS0003 AAA00006    CCC0009

↑のデータを一括で↓のように変換したいのですが、 A列      B列 商品コード   関連商品コード AAA00001    AAB0001 AAA00001    AAC0001 AAA00001    ABA0002 AAA00001    BBA0002 AAA00001    VVS0003 AAA00001    CCC0009 AAA00002    AAB0001 AAA00002    AAC0001 AAA00002    ABA0002 AAA00002    BBA0002 AAA00002    VVS0003 AAA00002    CCC0009 ・       .  ・       . ・       .

良い方法がございましたらご教示お願い致します。 つたない説明で申し訳ございません。 よろしくお願いいたします。

< 使用 Excel:unknown、使用 OS:unknown >


 バージョンが不明ですが、2010以降でPower Queryが使えるなら、それが簡単かと思います。
 只、普段から使っていないと、逆に難しく感じるかも...

(まる2021) 2024/04/23(火) 13:58:31


 >膨大な量の商品コード
 具体的に今現在おおよそどんな行数ですか?

 サンプルではA列とB列が同じ行数なんですけど、
 実際はそんなことないですよね?
 実際はどんな状況なんですか?
 ※・・と言うより、説明が間違っているのではないかと思っているのですが・・

(半平太) 2024/04/23(火) 14:53:39


 例示のレイアウトであるとすると、一応そのとおりにはなるけど。

 C2 =INDEX(A:A,INT((ROW()-2)/(COUNTA(B:B)-1))+2)
 D2 =INDEX(B:B,IF(MOD(ROW(),COUNTA(B:B)-1)=1,COUNTA(B:B),IF(MOD(ROW(),COUNTA(B:B)-1)=0,6,MOD(ROW(),COUNTA(B:B)-1))))

 C2,D2とも下にフィルコピー(C列の値が0となる行の1行前まで)

 なんかすごく強引で全然スマートではないし、絶対もっといい方法があるはず。

(不採用) 2024/04/23(火) 16:50:06


 商品コードと 関連商品コードの直積(またはクロス結合)ということのようですが、
 本当にそれが求めるものなのか確認したいですね。

 普通は、商品コード毎に、関連商品コードは異なりますよね。
 だからこそそういう対応表が必要になるんですよ。
 質問者さんの意図は、すべての組み合わせを予め作ってしまって、不要なものを消していく方針なんですか?
 目指すものが間違ってはいないかと懸念します。もう少し説明してください。

 また、使用しているExcelのバージョン情報は必須です。
 使える道具がまるで変ってきますので、それを書かない質問はお互いに無駄なことになります。
 是非、きちんと書いてください。

(xyz) 2024/04/23(火) 20:04:41





[ 一覧(最新更新順) |

]

キーボードヒント:[Home]または[Fn+Home]キーで一番上へ戻ります

YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.