秀丸の質問です。

エクセルにて
1 AAA
2 BBB
3 CCC
・・・
と規則的に並んだデータを、雛形としてすでに存在しているデータの

1 AAA
文章が入ります
2 BBB
文章が入ります
3 CCC
文章が入ります

と該当部分だけ差し替えるマクロを作ることは可能でしょうか。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2008/01/16 03:00:31
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:I11 No.1

回答回数732ベストアンサー獲得回数55

ポイント60pt

質問の趣旨は

A

B

C

D

Z

A

文章X

B

文章X

C

文章X

D

文章X

Z

文章X

にすると考えて良いですか?

 

元データに対して一行ごとに改行して文章Xをペーストする場合は、

	golineend;
	insertreturn;
	paste;
	right;

を必要行数コピペしてマクロファイルをつくり、文章Xをコピーした状態でマクロを実行すれば良いと思います。

http://homepage3.nifty.com/_htom/macro/index.html

id:clinejp

質問が少々舌足らずでした。

雛形の文章Xがまずありまして、

1 英語で言うとこうなります

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

2 日本語で言うとこうなります。

YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY

3 韓国語で言うとこうなります

ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ

の123の部分を読み取って、その行のみエクセルで作った項目データ

(この場合例えば1ドイツ語ではこうなります。2フランス語ではこうなります。3スペイン語ではこうなります。)

と差し替えたいのです。

2008/01/11 19:26:27
  • id:kaiton
    終了しましたが、「秀丸」で処理しないといけないのでしょうか?
    エクセルで1,2,3等をキーにVlookup関数でもとの「規則的に並んだデータ」を検索し
    置き換えた後の結果を秀丸に貼り付けるとかではだめですか?

    「規則的に並んだデータ」を少し加工してD,E列に(元のでもMATCH,INDEX関数を使えばできますが、少し複雑になるので..)
    1|1 AAA
    2|2 BBB
    3|3 CCC
    ・・・ 

    「雛形としてすでに存在しているデータ」をA列に貼り付け

    B1=IF(ISERROR(VLOOKUP(VALUE(LEFT(A1,1)),$D$1:$E$3,2,FALSE)),A1,VLOOKUP(VALUE(LEFT(A1,1)),$D$1:$E$3,2,FALSE))
    この式を下にコピー (キーになる部分は数字のみを想定しています>VALUE関数)

    B列をコピーして、秀丸に貼り付ける

    ただし、2行目の「XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX」の1桁目が偶然1,2,3とかなら判別できないため無理です。
    最初の質問では1,2,3等をキーにしてとかが、「該当部分」が何なのかわからなかったので、
    外しているかもしれませんが..

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません