Excelで元表からか、同じIDの行(複数)を別な表への転記

イメージ説明リンク内容### 実現したいこと

Excel上で表を作成(元表)、その中にIDカラムが有ります。表の中から同じIDの行(複数)データを別な表に転記したい

###ここに実現したいことを箇条書きで書いてください。
転記先の表に元表カラムを設け、指定ID値の元表カラムを数式で作成。この値で元表のデータを転記する。

前提

転記先カラムの数式は同一、転記先のデータ部の式も同一にしたい。

転記先データ部の数式は
=IF($S3<>"",INDEX(B:B,$S3),"")
$S 転記したいID値
B:B 転記したいデータの先頭カラム

転送先カラム部の数式
=IF(COUNTIF($C:$C,$T$2)>=ROW(S1),LARGE(INDEX(($C$1:$C$494=$T$2)*ROW($C$1:$C$494),,),COUNTIF($C:$C,$T$2)-ROW(S1)+1),"")

解かりずらいので改行を追加。*以下、私なりのコメントを追加
=IF(COUNTIF($C:$C,$T$2)>=ROW(S1) *IFの条件マッチした数で判断
,LARGE( *IF 真の場合で行番号を算出
INDEX( **これが解りません? 指定した範囲の行列で交差した値を取り出すと理解
($C$1:$C$494=$T$2)*ROW($C$1:$C$494) *範囲?
,,) *範囲全体?
,COUNTIF($C:$C,$T$2)-ROW(S1)+1  *LARGEの位置
)
,"" *IF 偽 ブランクを記載
)

####ここに質問の内容を詳しく書いてください。

LARGE()で元表のカラムを算出。
INDEX()はLARGE()の範囲ですが理解できません。
($C$1:$C$494=$T$2) の=は何を意味しますか?範囲($C$1:$C$494)を制約している?
($C$1:$C$494=$T$2)*ROW($C$1:$C$494) の*は何を意味しますか?=ROW($C$1:$C$494)は1です。
COUNTIF($C:$C,$T$2)-ROW(S1)+1 はLARGE()の位置。元表のIDの数--です。

発生している問題・エラーメッセージ

エラーではありません。数式の動作の詳細を訪ねています。

該当のソースコード

Excelの数式

ソースコード
=IF(COUNTIF($C:$C,$T$2)>=ROW(S1),LARGE(INDEX(($C$1:$C$494=$T$2)*ROW($C$1:$C$494),,),COUNTIF($C:$C,$T$2)-ROW(S1)+1),"")

イメージ説明

試したこと

特に記述なし

補足情報(FW/ツールのバージョンなど)

画像2枚を添付しました。上記Excelは自作版の転記処理。元表のCがIDでID1を転記しています。行番号部、データ部の数式が見えています。

コメントを投稿

0 コメント