Заменить текст\Удалить строку в VB6
Формулировка задачи:
Я - начинающий...
Есть код:
При запуске вылетает ошибка
Посмотрел в дебагере
Листинг программы
- Public Sub PrintPotreb()
- Set objWord = CreateObject("Word.Application")
- objWord.Visible = True
- objWord.Documents.Add App.Path & "\Samples\DogLPH1Z.dot"
- f = SetFieldsStr("@Заменяемый_текст@", "")
- Selection.EndKey Unit:=wdLine, Extend:=wdExtend
- Selection.Delete Unit:=wdCharacter, Count:=1
- End Sub
- Function SetFieldsStr(Text1 As String, Text2 As String)
- With objWord.Selection.Find
- .ClearFormatting
- .Forward = True
- .Wrap = wdFindContinue
- .Text = Text1
- .Replacement.Text = Text2
- .Replacement.ClearFormatting
- .Execute
- End With
- End Function
"Run-time error 424: object required"
на строке
Листинг программы
- Selection.EndKey Unit:=wdLine, Extend:=wdExtend
wdLine
,wdCharacter
иwdExtend = Empty
. Разумный вопрос: почему?
А вообще, задача состоит в том, чтобы удалить всю строку со словом "@Заменяемый_текст@".
Решение задачи: «Заменить текст\Удалить строку в VB6»
textual
Листинг программы
- Sub PrintPotreb()
- Dim objWord As Object, oDoc As Object
- Set objWord = CreateObject("Word.Application")
- objWord.Visible = True
- Set oDoc = objWord.Documents.Add(App.Path & "\Samples\DogLPH1Z.dot")
- If SetFieldsStr("@Заменяемый_текст@", "", oDoc) Then
- objWord.Selection.EndKey Unit:=5, Extend:=1
- objWord.Selection.Delete Unit:=1, Count:=1
- End If
- End Sub
- Function SetFieldsStr(Text1 As String, Text2 As String, oDoc As Object) As Boolean
- With oDoc.Range.Find
- .ClearFormatting
- .Forward = True
- .Wrap = 1
- .Text = Text1
- .Replacement.Text = Text2
- .Replacement.ClearFormatting
- SetFieldsStr = .Execute
- End With
- End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д