|
ちくたくさん
お返事ありがとうございます。
実は、テキストファイルからデータを読み込んで置換していきたいのです。
下記のようにテキストファイルからデータを読み込むコードを追加してみました。
Sub test()
Dim Fso As Object
Dim Ts As Object
Dim MyF As String
Dim fStr As String, rStr As String
Dim r As Range, f As Integer, fAdd As String
Dim MyS As String
MyF = Application.GetOpenFilename("ファイルを選択(*.*), *.*")
If MyF = "False" Then Exit Sub
Set Fso = CreateObject("Scripting.FileSystemObject")
Set Ts = Fso.OpenTextFile(MyF, 1)
MyS = Ts.ReadAll
Ts.Close
fStr = InputBox("検索文字列")
rStr = InputBox("置換文字列")
Set r = .Find("""MOM:: & " & fStr)
fAdd = r.Address
Do
If Not r Is Nothing Then f = MsgBox(r.Address & "置き換えますか?", vbOKCancel)
If f = vbOK Then r.Value = """MOM:: & " & rStr
Set r = .FindNext(r)
If r Is Nothing Then Exit Do
Loop While Not r Is Nothing And r.Address <> fAdd
Set Ts = Fso.OpenTextFile(MyF, 2, True)
Ts.Write MyS
Ts.Close
MsgBox "書換えが完了しました"
If S <> 0 Then
Else
MsgBox S & " はありませんでした"
End If
Set Ts = Nothing
Set Fso = Nothing
End With
End Sub
ですが、今動かしてみたところ
Set r = .Find("""MOM:: & " & fStr) の .Findの部分でエラーがでます。
どこが違うのかもし解られるようであれば教えていただけないでしょうか?
お手数ですがもし宜しければエラーの原因も教えていただけると
今後の勉強にも役立つのでお願いできませんでしょうか?
どうぞ宜しくお願い致します。
|
|