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

Cassava Editor サポート掲示板

スレッド一覧に戻る返信

[823] 1行目にテキスト挿入し元の1行目を2行目表示

はっちん [2024/03/12 16:42:51]

いつも大変お世話になっております。
いつもCassavaをご利用させていただいております。
ありがとうございます。

ご質問です。

cassavaを開いて
1行目からペーストしたものを
F1でマクロ変換した際に
2行目から表示にし
1行目は全く違うテキストを挿入したいのですがどうしても1行目にあったものが消えてしまうのでご教授ください。



ペーストする内容は

    1列目    2列目   3列目   4列目
1行目 | あああ | 123456 | 日本 | 876541 |
2行目 | いいい | 654321 | 日本 | 978123 |
3行目 | ううう | 789012 | 日本 | 345678 |

この3行をcassavaの1行目にペーストした際
F1でマクロ変換した際に
1行目はある特定の文字列に変換し

上記3行は1行ずつコピーして表示
さらにコピーした2行目だけに特定の文字を追加

ということは可能でしょうか。


下記のようなイメージです

     1列目   2列目   3列目   4列目
1行目 | 名前  |  電話   | 国名 | 顧客ID   |
2行目 | あああ | 123456 | 日本  | 876541 |
3行目 |     | 済      |     |        |
4行目 | いいい | 654321 | 日本  | 978123 |
5行目 |     | 済      |     |        |
6行目 | ううう | 789012 | 日本  | 345678 |
7行目 |     | 済      |     |        |


1行目の


1行目 | 名前  | 電話   |国名 | 顧客ID|
には変換はできるのですが

1行目 | あああ | 123456 | 日本 | 876541 |
が消えてしまい

2行目 | いいい | 654321 | 日本 | 978123 |
3行目 | ううう | 789012 | 日本 | 345678 |
だけの表示になってしまいますし
コピーまでも作れない初心者です。


大変申し訳ございませんが
何卒宜しくお願い致します。





Re: [823] 1行目にテキスト挿入し元の1行目を2行目表示

あすかぜ [2024/03/12 21:23:40]

次のようなマクロでどうでしょうか。

for (y = Bottom; y >= 1; y--) {
  for (x = 1; x <= Right; x++) {
    [x,y*2] = [x,y];
    [x,y*2+1] = "";
  }
  [2,y*2+1] = "済";
}

[1,1] = "名前";
[2,1] = "電話";
[3,1] = "国名";
[4,1] = "顧客ID";

y 行目の内容を y*2 行目にコピーし、y*2+1 行目をクリアした後に 2 列目に "済" を追加しています。
上から処理をしていくとまだコピーしていないデータが上書きされてしまうので、下から上へ処理をするようにしています。
試してみてください。

Re: [823] 1行目にテキスト挿入し元の1行目を2行目表示

はっちん [2024/03/13 15:18:31]

早速のご返信ありがとうございました。

迅速にありがとうございます。

教えていただきましたマクロで
見事1行目のコピーして2行目のペーストなどできました。

しかし、すいません、こちらで誤っていた箇所がございまして
もう一度教えていただけませんでしょうか。

     1列目   2列目   3列目   4列目
1行目 | 名前  |  電話   | 国名 | 顧客ID   |
2行目 | あああ | 123456 | 日本  | 876541 |
3行目 |     | 済      |     |        |
4行目 | いいい | 654321 | 日本  | 978123 |
5行目 |     | 済      |     |        |
6行目 | ううう | 789012 | 日本  | 345678 |
7行目 |     | 済      |     |        |

これを

     1列目     2列目    3列目   4列目
1行目 | 名前     |  電話   | 国名 | 顧客ID   |
2行目 | 123456 |        | 日本  | 876541 |
3行目 | 123456 | 済      |     |        |
4行目 | 654321 |        | 日本  | 978123 |
5行目 | 654321 | 済      |     |        |
6行目 | 789012 |        | 日本  | 345678 |
7行目 | 789012 | 済      |     |        |

こうするべきでした。
2度手間をおかけして申し訳ございませんが
ぜひ、再度のご教示いただければ幸いでございます。
よろしくお願い致します。

Re: [823] 1行目にテキスト挿入し元の1行目を2行目表示

あすかぜ [2024/03/13 21:16:20]

元々の 2 列目を 1 列目に移動するということですね。
ではマクロを次のように変えてみてください。

for (y = Bottom; y >= 1; y--) {
  [1,y*2] = [2,y];
  [2,y*2] = "";
  [3,y*2] = [3,y];
  [4,y*2] = [4,y];

  [1,y*2+1] = [2,y];
  [2,y*2+1] = "済";
  [3,y*2+1] = "";
  [4,y*2+1] = "";
}

[1,1] = "名前";
[2,1] = "電話";
[3,1] = "国名";
[4,1] = "顧客ID";

よろしくお願いします。

Re: [823] 1行目にテキスト挿入し元の1行目を2行目表示

はっちん [2024/03/14 09:14:13]

いつもありがとうございます。
またまた迅速に教えていただきましてありがとうございます。
教えていただきましたマクロで完璧にできました。
本当に助かりました。
これからもどうぞよろしくお願い致します。
ありがとうございました。

スレッド一覧に戻る返信