Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Набросайте пожалуйста в VBA / 5 сообщений из 5, страница 1 из 1
31.01.2006, 09:40:45
    #33512397
Tachkin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Набросайте пожалуйста в VBA
Я не разбираюсь совсем.

Есть текстовый документ отредактированный под .txt, т.е. в конце каждой строчки стоит "возврат коретки" Enter. :)
Мне нужен код програмки VBA что бы она искала какие строчки начинаются тремя пробелами (новый параграф) и Ентеры в конце предыдущих строк не трогала, а остальные заменяла пробелом.
...
Рейтинг: 0 / 0
31.01.2006, 09:59:20
    #33512454
Набросайте пожалуйста в VBA
Прикрепи текстовый файлик с примером текста.
...
Рейтинг: 0 / 0
31.01.2006, 10:26:39
    #33512549
LeonM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Набросайте пожалуйста в VBA
1.запустить word
2.начать запись макроса
3.считать файл
4.провести изменения
5.завершить запись макроса
6.открыть макрос
7.отредактировать
...
Рейтинг: 0 / 0
31.01.2006, 10:58:05
    #33512672
Tachkin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Набросайте пожалуйста в VBA
Пользователь2Прикрепи текстовый файлик с примером текста
...
Рейтинг: 0 / 0
01.02.2006, 11:19:49
    #33515353
Набросайте пожалуйста в VBA
1.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
Public Sub X()

    Dim rng As Range
    Dim varValue As Variant
    Dim varTemp As Variant
    Dim avarItems As Variant
    Dim intI As Integer
    
    With ActiveDocument
        Set rng = .Range( _
          Start:=.Paragraphs( 1 ).Range.Start, _
          End:=.Paragraphs(.Paragraphs.Count).Range.End)
    End With
    
    varValue = rng.Text
    
    avarItems = Split(varValue, Chr( 13 ))
    
    For intI = LBound(avarItems) To UBound(avarItems) -  1 
        If InStr(avarItems(intI), "   ") =  1  Then
            If Not IsEmpty(varTemp) Then
                varTemp = varTemp & Chr( 13 ) & avarItems(intI)
            Else
                varTemp = avarItems(intI)
            End If
        Else
            varTemp = varTemp & " " & avarItems(intI)
        End If
    Next
    
    rng.Text = varTemp
End Sub

Либо так: :)

2.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Sub X2()

    Dim p As Paragraph
    
    For Each p In ActiveDocument.Paragraphs
        If InStr(p.Range.Text, "   ") <>  1  Then
            p.Previous.Range = _
              Replace(p.Previous.Range, Chr( 13 ), " ")
        End If
    Next p
End Sub
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Набросайте пожалуйста в VBA / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]