• 締切済み

エクセルVBAのReplaceメソッドについて

エクセル表内のある文字列をVBAのReplaceメソッドを使用して、別の文字列に一括変換したいと考えてます。引数で指定する『置換後の文字列』として該当セルの一つ上のセル(A2に対象文字列がある場合は、A1の値)を指定したいのですが、どのように指定したらよいのか分かりません。Replaceメソッドで置換後の文字列として一つ上のセルの値を指定する事は可能でしょうか。宜しくお願いします。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

>セルの一つ上のセル(A2に対象文字列がある場合 上の行から順次下の行に、これを行うと意味がないような感じがする。私が多分問題の意味を捉えていないのだと思います。 第3番目は変換後のもので更に変更するのでしょうか。 そう言うケースは考え難い。 実例を示していただけたら。 やるなら行削除と同じで、下から上へやっていくか。 ○Replaceの対象(Replacement)や置き変える文字列(What)にCellsの値を指定するのは、疑問の出ることではないように思うし。

  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

こんな意味でしょうか? A1 に「いいい」 A2 に「あああhogeううう」で A2を選択して実行すると、A2 を「あああいいいううう」にします。 Sub Test()  With ActiveCell    If .Row = 1 Then Exit Sub    .Replace what:="hoge", _    Replacement:=.Offset(-1, 0).Value  End With End Sub

関連するQ&A