○第167回目 計算式中の一部を置換え
計算式をコピーしたり、移植したあとに、置き換える必要があります。その際のマクロとして、複数項目の置換えがあるのですが、それは、別のセルに置換情報を入れる必要があります。ここを改善したものを作ろうという趣旨です。
計算式の取得=⇒計算式の中から置換え前文字列を選ぶ=⇒これに対応した置換え後文字列を作る=⇒これらを繰り返す=⇒すべての指定が終了した後=⇒置き換え範囲を指定して計算式を置き換える。
という流れです。置換え前文字列を作るという操作が不要となりますし、置き換え後のもの作る時の手間が若干簡素化されます。
1.計算式の取得
2.計算式の中から置換え前文字列を抜き出す(不要な文字列を削除する)
3.これに対応した置換え後文字列を作る
=⇒これらを繰り返す。最大21項目
4.置き換え範囲を指定
5.計算式を置き換える。
'置換え処理。置換え文字列の数だけ繰り返す
Range(Cells(gyo1, retu1), Cells(gyo9, retu9)).Select
For
i = 0 To rep_cnt - 1
Selection.Replace What:=rep_moji1(i), Replacement:=rep_moji2(i),
LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Next i
計算式が長い場合があるので、フォームのテキストボックスを使用します。
※フォームについては、『○第133回目 計算式作成のお手伝い(一般的な計算式、究極モドキ3)』を参照。
コピーしたとき、不要な他のブック等の情報が入った計算式も、このマクロで簡単に直せます。
問題は計算式の条件(警察の形式を満たしていない、参照先がないなど)を満たさない時、逐一聞いてくることでしょう。大量に置換える場合は、ためしの処理が必要でしょう。

0 件のコメント:
コメントを投稿