文字列はひとつのセルに入っています。
N**→**Nへの複数同時置換は多分普通の「検索/置換」では出来ないと思います。
という訳でマクロ(ExcelVBA)を組んで見ました。
Sub ReplaceN()
Dim ObjRegExp As Object
Dim StrBefore, StrAfter, StrBuffer As String
Dim ObjRange As Range
Set ObjRegExp = CreateObject(”VBScript.RegExp”)
StrBefore = ”N(¥d+)”
StrAfter = ”$1N”
With ObjRegExp
.Pattern = StrBefore
.IgnoreCase = True
.Global = True
For Each ObjRange In ActiveSheet.UsedRange
StrBuffer = ObjRange.Value
If .Test(StrBuffer) Then
ObjRange.Value = .Replace(StrBuffer, StrAfter)
End If
Next
End With
Set ObjRegExp = Nothing
End Sub
上記のソースを[ツール]-[マクロ]-[Visual Basic Editor]からThisWorkbookに貼り付けて、その後EXCELの[ツール]-[マクロ]-[マクロ]から[ReplaceN]を選んで実行して下さい。
http://www.vector.co.jp/vpack/filearea/win/util/text/conv/code/i...
Download: Windows > ユーティリティ > テキストファイル用 > テキスト変換 > 文字コード変換
調べた限りエクセルが持っている置換ツールですと正規表現が扱えないようなので、一度テキスト形式(CSV)でSAVEしてから、
MS-WORDやスクリーンエディタ、上記にあるツールで置換するという方法はどうでしょうか?
MS WORDでの正規表現の使い方は以下を参考にされると良いと思います。
http://www.shuiren.org/chuden/teach/word/search/replace02.htm#ta...
文字列の置換 その2 置換オプション ―MS Wordを使いこなす―
標記のページの一番下にある説明を読まれるか下記の記述に従って作業してください。
簡単です。
Ctrl+Fで検索ダイアログボックスを表示させて、置換(R)ボタンを押してください。
上の欄にN12,N06,18,24,N54、
下の欄に12N,06N,18,24,54N
と入力して、
すべて置換(A)ボタンを押せばOKです。
http://download.seesaa.jp/contents/win/app/a_other/13803/
フリーソフト - Seesaa ダウンロード : Excel検索置換
こんなのもありますが、
この場合は単純に
検索する文字列に N12,N06,18,24,N54
置換後の文字列に 12N,06N,18,24,54N
といれて置換しちゃえばOKなんじゃないでしょうか。
最初の文字列が一つの文字としてセルに入っているんですよね。
コメント(0件)