- 題名・名前・本文は必ず入力してください。
- 題名は、できれば具体的な本文内容がイメージできるものにしてください。
- スパムよけのため、本文中に句読点記号が含まれていない場合にはエラーとなります。 「,」「.」ではなく「、」「。」を使ってください。
- [バグ][要望][質問][済][未] の分類は管理人が後から勝手に付加しています。 書き込み時は意識する必要はありません。
[931] 一致している場合各先頭行をコピー
UV [2026/01/09 15:54:08]
ご質問失礼いたします。
2行目以下のすべての入力行に対し
3列目の内容が一致する場合、
4列目の内容は各一致している先頭行の内容に置換する
という方法をお教えいただけますと幸いです。
【before】
名前|コード|番号|データNo
田中|1|123|112233
佐藤|6|123|456675
木村|2|789|332211
高橋|9|789|545121
鈴木|7|789|855325
【after】
名前|コード|番号|データNo
田中|1|123|112233
佐藤|6|123|112233
木村|2|789|332211
高橋|9|789|332211
鈴木|7|789|332211
お手数ですが、よろしくお願いいたします。
Re: [931] 一致している場合各先頭行をコピー
あすかぜ [2026/01/09 21:32:18]
次のようなマクロでどうでしょうか。
for (y = 2; y <= Bottom; y++) {
if ([3,y] == [3,y-1]) {
[4,y] = [4,y-1];
}
}
3 列目が 1 つ上と同じ場合、4 列目を 1 つ上からコピーします。
上から順番に処理をするので、3 列目が同じ行がたくさんある場合も先頭行の内容が連鎖的にコピーされると思います。
試してみてください。
Re: [931] 一致している場合各先頭行をコピー
UV [2026/01/13 15:42:27]
希望の通りにおこなうことができました。
いつもありがとうございます。
お手数おかけいたしました。