1

Тема: Работа со списками

какой параметр в макросах отвечает за списки.
поясню таблицы - это  tables
картинки - InlineShapes
а списки - listgallery?

2

Re: Работа со списками

Да, ListGalleries.
Подробнее здесь: внешняя ссылка
И картинки это не только Inlineshapes, но и Shapes.

3

Re: Работа со списками

А что имеется в виду, по фразой «отвечает за списки»

Лучше день потерять — потом за пять минут долететь!

4

Re: Работа со списками

если в тексте встречается список с разными маркерами, то как-то можно их оформить одним общим маркером, например 1) 2) 3) и тд?

например:
1) траляля;
2. траляля;
c. траляля.

просто ворд эти списки видит как три отдельных.
а про listgallery я имел ввиду, когда начал писать макрос:

dim list1 as listgalleries
for each list1 in activedocument.listgalleries - на эту строчку ругается. sad

5

Re: Работа со списками

не подскажите, как сделать так, чтобы во всех списках в тексте слова начинались с малых букв?

6

Re: Работа со списками

Вижу два способа:
1. Начинать списки со строчных букв (срабатывает не всегда);
2. Выделить список и применить к нему либо форматирование вручную через команду "Регистр", либо воспользоваться,  например, таким макросом, который преобразует первые буквы выделенного списка в строчные:

Sub firstLC()
'преобразование первых букв выделенного текста в строчные
Dim fChar As Range
Dim selText As Range
Set selText = Selection.Range
If Selection.Type = wdSelectionIP Then
   MsgBox "Не выделен текст"
Else
   For Each fChar In selText.Sentences
      If fChar.Characters.First Like "[A-ЯA-Z]" Then
        fChar.Characters.First.Case = wdLowerCase
      End If
   Next fChar
End If
End Sub

7

Re: Работа со списками

darklumen пишет:

for each list1 in activedocument.listgalleries - на эту строчку ругается.

Конечно ругается. ListGalleries это объект приложения, а не документа. Попробуйте в Immediate Window набрать
?ListGalleries.Parent
И увидите, что родителем является Microsoft Word.
Immediate Window вызывается по Ctrl+G

Лучше день потерять — потом за пять минут долететь!