Страницы: 1
RSS
Ошибка: слишком длинный строковый параметр
 
Добрый день

Подскажите, что можно исправить, чтобы не выдавал ошибку «Слишком длинный строковый параметр»
Код
    Dim WA As Object, WD As Object: Set WA = CreateObject("Word.Application")
    For Each row In ActiveSheet.Rows("3:" & r)
        With row
            Номер = Trim$(.Cells(1))
            Filename = Папка & Номер & Расширение
           
            Set WD = WA.Documents.Add(ПутьШаблона): DoEvents
            
            For i = 1 To КоличествоОбрабатываемыхСтолбцов
                FindText = Cells(1, i): ReplaceText = Trim$(.Cells(i))
               
                With WD.Range.Find
                    .Text = FindText
                    .Replacement.Text = ReplaceText
                    .Forward = True
                    .Wrap = 1
                    .Format = False: .MatchCase = False
                    .MatchWholeWord = False
                    .MatchWildcards = False
                    .MatchSoundsLike = False
                    .MatchAllWordForms = False
                    .Execute Replace:=2
                End With
                DoEvents
            Next i
            
            WD.SaveAs Filename: WD.Close False: DoEvents
            
        End With
    Next row

Большое спасибо за помощь
 
yangazitov.m, если ругается на Replacement.Text, то вместо .Execute Replace:=2 сделайте цикл: найти - вставить текст, снова найти и т.д. У метода Range.InsertBefore ограничения по длине нет (по крайней мере, строку длиной 5000 можно вставить).
Если не справитесь, приложите файлы, на которых можно отладить код.
 
А если лень делать цикл, вставляя текст кусками, - можете попробовать готовое решение
http://excelvba.ru/programmes/FillDocuments
(программа умеет подставлять в шаблон и длинные строки, - за основу там был взят тот же самый макрос, что вы сейчас используете, и добавлен цикл, про который вам написал Казанский)
 
Казанский,

Не могли бы Вы помочь с данным циклом
Спасибо большое за помощь
Файлы прикреплены
Путь установки C:\VBA
Страницы: 1
Читают тему
Наверх