• 締切済み

エクセル マクロ(VBA)について

教えてください。 エクセル2007を使用しています。 エクセルマクロから、任意のフォルダにあるエクセルファイルを開き、 開いたエクセルブックの全シートを検索し、「バナナ」と「リンゴ」というどちらかの文言が入っていた場合のみ 「リンゴ」を「スイカ」に置換するコードを教えてください。。。 「バナナ」と「リンゴ」の両方の文言が無い場合(どちらか一方のみしかない場合)は、置換しないです。 すみませんが困っているので教えてください。

みんなの回答

  • jbeam
  • ベストアンサー率41% (85/204)
回答No.1

Book中の全Sheetが対象。 Sheetのセルは全てが対象になりますか? 一つのセルに入っている文字列の長さにもよりますが、 16,384列×1,048,576行=17,179,869,184セル分回すのですか? それも文字列の中から文字を(2バイト系かどうかも不明・・・文言ですので1バイト系も有り?) ブレイク条件は無いのですか? それと 第一条件 >「バナナ」と「リンゴ」というどちらかの文言が入っていた場合のみ >「リンゴ」を「スイカ」に置換する 「バナナ」OR「リンゴ」が文章に含まれること 「バナナ」AND「リンゴ」の両方があれば対象外 ですから ※どちらか一方があれば処理対象となる。 第二条件 >「バナナ」と「リンゴ」の両方の文言が無い場合(どちらか一方のみしかない場合)は、置換しない 「バナナ」AND「リンゴ」が含まれていない場合は対象外・・・・これは第一条件と同じ 「バナナ」・「リンゴ」(どちらか一方のみしかない場合)は対象外 これは第一条件の※どちらか一方があれば処理対象となる。 と矛盾してますね。 質問者様が困っているように、質問の内容が読み取れない様に質問されたのでは、困っている人の力になろうとしている善意の第三者を困らせるのが目的としか思えないのですが、もう少し整理して答えが出せる質問に変更しましょう。