Предлагаю функцию переноса строк - мож кому надо

kah2
Дата: 13.09.2005 16:31:31
Очень часто пригождается при выгрузке в txt-файлы различных бланков бух. документов.

Public Function PerenosStrok(Stroka As String, MaxLength As Integer, NomerVozvrStroki As Integer)

Stroka = Stroka & " "
Dim beginObrezok As Integer 'номера начальных и конечных символов обрезков
Dim endObrezok As Integer
Dim SimvolyObrezka(10000) As String
Dim iSimvolyObrezka As Integer
'+++ Определяем начало и конец искомого обрезка ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
'если символ с номером beginObrezok не является пробелом, то идти назад то тех пор пока не встретится первый пробел
'это нужно, чтобы не обрезалось посреди слова
beginObrezok = IIf((NomerVozvrStroki - 1) * MaxLength = 0, 1, (NomerVozvrStroki - 1) * MaxLength)
For iSimvolyObrezka = beginObrezok To 1 Step (-1)
SimvolyObrezka(iSimvolyObrezka) = Mid(Stroka, iSimvolyObrezka, 1)
If SimvolyObrezka(iSimvolyObrezka) = " " Then
beginObrezok = iSimvolyObrezka
Exit For
End If
Next iSimvolyObrezka
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
endObrezok = NomerVozvrStroki * MaxLength

For iSimvolyObrezka = endObrezok To beginObrezok Step (-1)
SimvolyObrezka(iSimvolyObrezka - beginObrezok) = Mid(Stroka, iSimvolyObrezka, 1)
If SimvolyObrezka(iSimvolyObrezka - beginObrezok) = " " Then Exit For
Next iSimvolyObrezka
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
On Error GoTo err
'PerenosStrok = Trim(Mid(Stroka, CLng(beginObrezok), CLng(beginObrezok + iSimvolyObrezka) - 1))
PerenosStrok = Trim(Mid(Stroka, CLng(beginObrezok), CLng(iSimvolyObrezka - beginObrezok)))
If Len(PerenosStrok) > MaxLength Then GoTo err
Exit Function
err:
PerenosStrok = "!!! Ошибка переноса строк !!!"
End Function



Пример работы:
MsgBox PerenosStrok("УФК Минфина РФ по Краснод. кр. (л/с 12345678901) (Краснод. академия МВД РФ л/с 98765432109)", 46, 2)

Выдает: 12345678901) (Краснод. академия МВД РФ л/с

1 параметр - исходная строка
2 - максимальная ширина строки
3 - номер возвращаемой строки
Bor-L
Дата: 13.09.2005 16:57:24
Положите тут, там ее скорее найдут :)
http://am.rusimport.ru/MsAccess/content.aspx?id=6