非常に多くの行を含むExcelファイルがあります。このファイルには、次のような製品 ID 列と製品名列が含まれています。
これらの製品に、vba (クラスターのようなもの) を使用して名前で製品 ID を追加したいと考えています。結果は次のようになります。
私の元のExcelファイルが最初の画像であることに注意してください
製品名がソートされていると想定できる場合は、A2に値1
を入力し、A3=IF(B2=B3, A2, A2 + 1)
にドラッグして下に移動します。
VBA を使用したい特別な理由はありますか? これは、参照テーブルと vlookup を使用して比較的簡単に実行できます。
製品名と対応する製品 ID をリストするワークブックにテーブルを作成します。
Product Name Product ID
x 1
y 2
j 3
次に、VLOOKUP式をセルA2に入力します
=VLOOKUP(B2, $G$1:$H$5, 2, 0)
$G$1:$H$ を、作成したばかりの参照テーブルの場所に置き換えます。これにより、テーブル内の製品名が検索され、対応する ID が返されます。次に、数式を 38000 行下にコピーできます。