Добрый день! Имеется макрос, заполняющий шаблон Word документа значениями из ячеек Excel.
В данном макросе есть функция проверки значения в ячейке excel на превышение 256 символов и вставки текста в шаблон Word пошагово, если значение превышает 256 символов:
Код |
---|
'Функция проверки и разбиения строки
Sub Replace(Word1, Word2, WD)
Lencheck = Len(Word2) 'Проверка длины строки для вставки
If Lencheck > MaxLen Then 'Если строка более 256 символов вставку следует выполнить по этапно
Start = 1
Lengg = MaxLen 'устанавливаем длину строки для вставки
Do
Buffer = Mid(Word2, Start, Lengg) 'режем строку для вставки с позиции Start до Lengg
Call Replacing(Word1, Buffer, WD)
Start = Lengg 'меняем стартовую позицию функции Mid
Lengg = Lengg + MaxLen 'двигаемся далее по строке с шагом MaxLen
Loop While Lengg < Lencheck 'выполняем пошаговую вставку строки, пока не дойдем до конца
Buffer = Mid(Word2, Start, Lengg) 'режем строку для вставки с позиции Start до Lengg
Call Replacing(Word1, Buffer, WD)
Else 'замена Word1 на Word2 при условии, что Word2 - текст для замены - короче 256 символов
Call Replacing(Word1, Word2, WD)
End If
End Sub |
Но данная функция не работает. В чем может быть проблема? Заранее спасибо.