powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Чайниковский вопрос про Word
4 сообщений из 4, страница 1 из 1
Чайниковский вопрос про Word
    #32147100
qu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
qu
Гость
Господа! Есть 2 проблемы. 1 - как с помощью макроса заставить Ворд менять шрифт в тексте с учетом языка (например Arial англ. сменить на Verdana англ., при этом чтобы русский, немецкий и т.д. оставались Arial). 2 - как можно завершить цикл при достижении конца документа (вордовского) и посчитать кол-во знаков в тескте? Заранее спасибо.
...
Рейтинг: 0 / 0
Чайниковский вопрос про Word
    #32147215
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1.
Код: plaintext
1.
2.
3.
4.
5.
6.
Sub Macro1()
For i =  1  To ActiveDocument.Words.Count
    If ActiveDocument.Words(i).Font.Name =  "Arial"  And _
    ActiveDocument.Words(i).LanguageID = wdEnglishUS Then _
    ActiveDocument.Words(i).Font.Name =  "Verdana" 
Next
End Sub

2. Если без пробелов, то может будет достаточно ActiveDocument.Characters.Count?
...
Рейтинг: 0 / 0
Чайниковский вопрос про Word
    #32147244
qu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
qu
Гость
в VB я полный чайник (пытаюсь изучать 2-й день). 1-часть работает на ура, а вот куда применить 2-ю? Если не трудно, то уж разжуйте нерадивому... :) Допустим задача такая: удаление 1, 2, 3...n пробелов (табуляций) из текста, пытался сделать через Do...Loop но не вышло :(( И еще вопрос существуют ли книжки типа "VB для чайников" или что-то похожее, или сайты может какие? Уж киньте ссылочку, можно на мыло. Еще раз спасибо.
...
Рейтинг: 0 / 0
Чайниковский вопрос про Word
    #32147344
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Удаление всех пробелов:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Sub Macro1()
    Dim i As Integer
    i =  1 
    Do While i < ActiveDocument.Characters.Count
      If ActiveDocument.Characters(i).Text = Chr( 32 ) Then
        ' У меня почему-то не хочет удалять пробел,
        ' если он стоит в конце абзаца. Пришлось делать обманку
        If ActiveDocument.Characters(i +  1 ).Text = Chr( 13 ) Then _
        ActiveDocument.Characters(i).Text = Chr( 13 )
        ActiveDocument.Characters(i).Delete
      Else
        i = i +  1 
      End If
    Loop
End Sub


VBA для `чайников`
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Чайниковский вопрос про Word
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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