Страницы: 1
RSS
переменная в колонтитуле для шаблона ворд, не происходит замена переменной в колонтитуле шаблона ворд
 
Всем доброго дня! У меня проблема с подстановкой данных из Эксель в шаблон Ворд: не происходит замещение переменной (&датаотб2) в колонтитуле. Ввиду полного отсутствия знаний в этом вопросе не могу понять как решить эту проблему. Огромная просьба, если кто-то знает как решить эту задачку, подскажите, пожалуйста, начинающему
Код
Sub ХВС_Акт_отбора()
Dim wdApp As Object
Dim wdDoc As Object

HomeDir$ = ThisWorkbook.Path
Set wdApp = CreateObject("Word.Application")
i% = 2
Do
If Cells(i%, 1).Value = "" Then Exit Do
If Cells(i%, 1).Value <> "" Then

NPP$ = Cells(i%, 1).Text
наименованиезаказчика$ = Cells(i%, 2).Text
юрадресзаказчика$ = Cells(i%, 3).Text
наименованиелицафактотб$ = Cells(i%, 4).Text
фактичадресотбора$ = Cells(i%, 5).Text
контактызаказчика$ = Cells(i%, 6).Text
датаотб$ = Cells(i%, 7).Text
датадоставки$ = Cells(i%, 8).Text
цельотбора$ = Cells(i%, 9).Text
методотбора$ = Cells(i%, 10).Text
основаниедляотбора$ = Cells(i%, 11).Text
хвскодпробы$ = Cells(i%, 12).Text


FileCopy HomeDir$ + "\аошаблон2.dotx", HomeDir$ + "\" + NPP$ + "_" + наименованиезаказчика$ + "_" + датаотб$ + ".doc"
Set wdDoc = wdApp.Documents.Open(HomeDir$ + "\" + NPP$ + "_" + наименованиезаказчика$ + "_" + датаотб$ + ".doc")

wdDoc.Range.Find.Execute FindText:="&date", ReplaceWith:=DataC$

wdDoc.Range.Find.Execute FindText:="&наименованиезаказчика", ReplaceWith:=наименованиезаказчика$
wdDoc.Range.Find.Execute FindText:="&юрадресзаказчика", ReplaceWith:=юрадресзаказчика$
wdDoc.Range.Find.Execute FindText:="&наименованиелицафактотб", ReplaceWith:=наименованиелицафактотб$
wdDoc.Range.Find.Execute FindText:="&фактичадресотбора", ReplaceWith:=фактичадресотбора$
wdDoc.Range.Find.Execute FindText:="&контактызаказчика", ReplaceWith:=контактызаказчика$
wdDoc.Range.Find.Execute FindText:="&датаотб", ReplaceWith:=датаотб$
wdDoc.Range.Find.Execute FindText:="&датаотб1", ReplaceWith:=датаотб$
wdDoc.Range.Find.Execute FindText:="&датаотб2", ReplaceWith:=датаотб$
wdDoc.Range.Find.Execute FindText:="&датадоставки", ReplaceWith:=датадоставки$
wdDoc.Range.Find.Execute FindText:="&цельотбора", ReplaceWith:=цельотбора$
wdDoc.Range.Find.Execute FindText:="&методотбора", ReplaceWith:=методотбора$
wdDoc.Range.Find.Execute FindText:="&основаниедляотбора", ReplaceWith:=основаниедляотбора$
wdDoc.Range.Find.Execute FindText:="&хвскодпробы", ReplaceWith:=хвскодпробы$

wdDoc.Save
wdDoc.Close
End If

i% = i% + 1
Loop
wdApp.Quit
MsgBox "Готово!"

End Sub
Изменено: Игоr' - 14.03.2021 13:38:20
 
Добрый

Цитата
Игоr' написал:
датаотб$ = Cells(i%, 7).Text
Какие данные присваиваются переменной? Насколько длинная строка?
Остальные остальные части функция Find заменяет нормально?
 
Прилагаю шаблон ворд, котором должны заменяться переменные
Изменено: Игоr' - 14.03.2021 14:37:01
 
Цитата
Игоr' написал:
Прилагаю шаблон ворд,
Где он?
 
файл приложил выше
Изменено: Игоr' - 14.03.2021 15:58:27
Страницы: 1
Наверх