[あすかぜ・ねっと]あすかぜ・ねっと自作ソフトCassava > サポート掲示板

Cassava Editor サポート掲示板

スレッド一覧に戻る返信

[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]

希望の通りにおこなうことができました。
いつもありがとうございます。
お手数おかけいたしました。

スレッド一覧に戻る返信