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

Cassava Editor サポート掲示板

スレッド一覧に戻る返信

[313] 氏名の編集をしたいのですが

ごきちくん [2015/04/25 21:59:06]

使い始めたばかりですが、マクロに挑戦してみたのですがうまくいきません
ある列に
鈴木
佐藤

小山田
等の氏が入っています。
その隣の列に
鈴 木
佐 藤
等3文字は間に全角スペース1個、1文字は全角スペース2個
3文字はそのまま
という処理をしたいのですが、どのようなマクロを組めばよいのでしょうか。
見よう見まねで組んだのですがうまくいきません。
教えていただけませんか?
この素晴らしいアプリを使いこなしたいと強く思っています。
for (y=1; y<=Bottom; y++){
vstr=[1,y];
vlen=len(vstr);
if(vlen=2){
[2,y]=mid(vstr,1,1)+" "+mid(vstr,2,1);
}
else if(vlen=1){
[2,y]=mid(vstr,1,1)+"  ";
}
}

Re: [313] 氏名の編集をしたいのですが

あすかぜ [2015/04/25 22:25:37]

Cassava マクロでは「=」は変数への代入を表し、「==」が値の等しさを調べます。
if 文の中の条件には「=」ではなく「==」を使ってください。
また、3 文字の場合にそのまま名前をコピーしたいのであればその処理を書く必要があるかもしれません。

次のようなマクロで動くのではないかと思います。

for (y=1; y<=Bottom; y++){
  vstr=[1,y];
  vlen=len(vstr);
  if(vlen==2){
    [2,y]=mid(vstr,1,1)+" "+mid(vstr,2,1);
  }
  else if(vlen==1){
    [2,y]=mid(vstr,1,1)+"  ";
  }
  else {
    [2,y]=vstr;
  }
}

よろしくお願いします。

Re: [313] 氏名の編集をしたいのですが

ごきちくん [2015/04/26 07:59:32]

迅速な対応ありがとうございます。
CSVを使用することが多いので助かります。
マクロの記録という機能があるとさらに助かりますが・・・

Re: [313] 氏名の編集をしたいのですが

あすかぜ [2015/04/26 18:27:32]

「マクロの記録」とは、通常の編集作業を自動的にマクロの文法で記録する機能ということでしょうか?
実現は難しそうですが、今後機会があれば検討してみます。

Re: [313] 氏名の編集をしたいのですが

ごきちくん [2015/04/27 20:19:54]

そうです。通常の編集作業を記録し、それを組み合わせて、複雑な作業を一度に行ってしまうイメージです。

Re: [313] 氏名の編集をしたいのですが

あすかぜ [2015/04/27 21:44:37]

一応別スレッドを立てておきました。
http://www.asukaze.net/soft/cassava/bbs/index.cgi?t=315
期待はしないようにお願いします。

スレッド一覧に戻る返信