вот сам код
- Код: выделить все
Private Sub replacer(oldtext As String, newtext As String)
'дальше все взял из записанного макроса замены, че тут к ччему - понимаю смутно:)
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = oldtext
.Replacement.Text = newtext
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
Private Sub hideform()
Unload Me
End Sub
Private Sub go_Click()
Dim replasment As String
replasment = Fform.doc_date
Call replacer("<date>", replasment)
replasment = Fform.doc_mons
Call replacer("<mons>", replasment)
replasment = Fform.doc_num
Call replacer("<num>", replasment)
replasment = Fform.firm
Call replacer("<firm>", replasment)
replasment = Fform.firmboss
Call replacer("<firmboss>", replasment)
replasment = Fform.ustav
Call replacer("<ustav>", replasment)
replasment = Fform.statplat
Call replacer("<statplat>", replasment)
replasment = Fform.rec1
Call replacer("<rek1>", replasment)
replasment = Fform.rec2
Call replacer("<rek2>", replasment)
replasment = Fform.rec3
Call replacer("<rek3>", replasment)
replasment = Fform.rec4
Call replacer("<rek4>", replasment)
replasment = Fform.rec5
Call replacer("<rek5>", replasment)
replasment = Fform.rec6
Call replacer("<rek6>", replasment)
replasment = Fform.rec7
Call replacer("<rek7>", replasment)
Call hideform()
End Sub
вобшем первый вопрос - Sub go_Click()
не нравится, надо бы цикл организовать, а вот как.. как получить поочередно в переменную replasment все значения заполненных полей? или лучше слелать массив с этими значениями, массив с стандартными шаблонами, кот нужно заменять и потом уже поочередно обрабатывать оба массива
второе не могу заменить строку которая находится в коллонтитуле - до не как добратся?