У меня есть текстовый файл, и я использую код VBA для замены строки в текстовом файле данными, которые мне нужны. Однако я столкнулся с проблемой, в которой я пытался заменить строку, встречающуюся во 2-м или n-м вхождении в текстовом файле, на другую строку, она переопределяет всю строку обновленной строкой независимо от позиции. Когда я указываю начальную позицию в позиции замены, она усекает данные. Есть ли возможность решить ее
Код:
Sub TextRep()
'String to be replaced
RepTxt = "string"
'Original Text
myTxt = "Replace string displayed in the text file with other string"
'Replacement string & Position
intRepPos = 54
RepUTxt = "macro"
'# of Occ of string to be replaced
intOcc = (Len(myTxt) - Len(Replace(myTxt, RepTxt, ""))) / Len(RepTxt)
intstrPos = 1
'Replace string in position 54
For i = 1 To intOcc
intstrRepPos = InStr(intstrPos, myTxt, RepTxt)
If intstrRepPos = intRepPos Then
myTxtUpd = Replace(myTxt, RepTxt, RepUTxt, intstrPos, 1)
Else
intstrPos = intstrRepPos + 1
End If
Next
End Sub