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

Cassava Editor サポート掲示板

スレッド一覧に戻る返信

[920] 項目名指定のマクロについて

メイベル [2025/10/30 10:31:30]

いつもお世話になっております

普段CSVで使用しているマクロは、指定した列に対してマクロを実行させることがほとんどですが、
サイト側による項目列の増減が頻繁に起こる為、
作成したマクロをいちいち修正しなければならない作業が起きていました。

そこで、1行目に設定してある項目名は変わることがないため、ベースを列ではなく項目名をベースにしたマクロに修正したいです

項目名が変更になっても修正しやすいと思うので...

例えば1行目に「code-name」が設定されている場合、その列の2行目以降の末尾に「_1」を追加するや、
他にも指定した項目名から項目名までを削除、項目名「●●」の2行目以降と内容をコピーして、項目名「○○」の2行目以降に貼り付けるなど、出来るだけ列指定を使用しないようにしたいのですが可能でしょうか?

Re: [920] 項目名指定のマクロについて

あすかぜ [2025/10/30 22:37:15]

データの編集に直接項目名を使うことはできないので、項目名を列番号に変換する関数を作ってください。
『1行目に「code-name」が設定されている場合、その列の2行目以降の末尾に「_1」を追加する』は次のようなマクロで実現できると思います。


function findColumn(name) {
  for (x = 1; x <= Right; x++) {
    if ([x,1] == name) {
      return x;
    }
  }
  return 0;
}

x = findColumn("code-name");

for (y = 2; y <= Bottom; y++) {
  [x,y] = [x,y] + "_1";
}


他のマクロについても、同じ findColumn() を使って、列番号の代わりに findColumn("項目名") を使うようにしてみてください。
よろしくお願いします。

Re: [920] 項目名指定のマクロについて

メイベル [2025/10/31 12:07:44]

いつもありがとうございます!
勉強になりました!

スレッド一覧に戻る返信