Textmaker: превращение маркеров в текст

Yar

Топикстартер
15 лет на форуме
Сообщения
373
Реакции
78
Для Microsoft Word имеется вот такой макрос:
Код:
Sub Procedure_1()

    Dim i As Long
  
    'Отключаем обновление монитора, чтобы быстрее работало.
    Application.ScreenUpdating = False
  
    For i = ActiveDocument.ListParagraphs.Count To 1 Step -1
        ActiveDocument.ListParagraphs(i).Range.ListFormat.ConvertNumbersToText
    Next i

    'Включаем обновление монитора.
    Application.ScreenUpdating = True
  
    'Сообщение, что код завершил работу.
    MsgBox "Код завершил работу!", vbInformation
  
End Sub

Я использую (и всем рекомендую:) ) FreeOffice и там он, естественно, не работает.
Есть ли здесь кто-то, способный адаптировать?

Можно даже только для маркеров.
 
Последнее редактирование:

_MBK_

Пикирующий бомбардировщик
12 лет на форуме
Сообщения
28 762
Реакции
9 454
Для Microsoft Word имеется вот такой макрос:
Код:
Sub Procedure_1()

    Dim i As Long
 
    'Отключаем обновление монитора, чтобы быстрее работало.
    Application.ScreenUpdating = False
 
    For i = ActiveDocument.ListParagraphs.Count To 1 Step -1
        ActiveDocument.ListParagraphs(i).Range.ListFormat.ConvertNumbersToText
    Next i

    'Включаем обновление монитора.
    Application.ScreenUpdating = True
 
    'Сообщение, что код завершил работу.
    MsgBox "Код завершил работу!", vbInformation
 
End Sub

Я использую (и всем рекомендую:) ) FreeOffice и там он, естественно, не работает.
Есть ли здесь кто-то, способный адаптировать?

Можно даже только для маркеров.
Там же вообще VBA нет, насколько я понимаю
 

Yar

Топикстартер
15 лет на форуме
Сообщения
373
Реакции
78
Чем он лучше, например, LibreOffice?
(по скриншотам на сайте вижу, что там ужасный новомодный мелкоофисный интерфейс)
Плюс этого пакета как раз в том, что интерфейс можно выбирать: новомодный или старомодный.
 

LeonidB

Их бин
Сообщения
2 402
Реакции
1 485
В этом ТекстМэйкере есть запись макросов? Включить запись, проделать процедуру преобразования маркеров в текст, остановить запись - и вуаля. Так, по крайней мере, можно сделать в Ворде.
 

Yar

Топикстартер
15 лет на форуме
Сообщения
373
Реакции
78
В этом ТекстМэйкере есть запись макросов? Включить запись, проделать процедуру преобразования маркеров в текст, остановить запись - и вуаля. Так, по крайней мере, можно сделать в Ворде.
нет, только текстом.
 

Старкрафт

Участник
Сообщения
158
Реакции
30
Плюс этого пакета как раз в том, что интерфейс можно выбирать: новомодный или старомодный.
В либре тоже можно включить риббон, если есть такие любители (а они есть и я к ним не отношусь).
А ещё либра с грехом пополам может выполнять некоторые VBA скрипты. Раньше только в линуксе, теперь и на windows. Но я попробовал, конкретно этот код не работает, хотя срабатывали намного более сложные.
 

Старкрафт

Участник
Сообщения
158
Реакции
30
Там же где в MS-Office - Alt+F11
Добавляем строку
Option VBASupport 1

Но не работает. В принципе, можно и средствами родного ОО-бейсика написать
Заготовка:
Код:
Sub enumerateParagraphs
    Dim oEnum 'com.sun.star.container.XEnumerationAccess
    Dim oPar 'Абзац

    oEnum = ThisComponent.Text.createEnumeration()
    Do While oEnum.hasMoreElements()
        oPar = oEnum.nextElement()
        ' Возвращаемый абзац может быть абзацем или текстовой таблицей
        If oPar.supportsService("com.sun.star.text.Paragraph") Then
            if oPar.NumberingIsNumber = true then msgbox "Ура"
            '
            'тут
            'нудно
            'меняем
            '
        End If   
    Loop
End Sub
 

_MBK_

Пикирующий бомбардировщик
12 лет на форуме
Сообщения
28 762
Реакции
9 454
Ну я пологаю, логичнее было б спросить не тут, а на соответствующем форуме BasicMaker 2016 for Windows - SoftMaker.com правда, как я погляжу по активности, с весьма унылыми перспективами :(
 

Старкрафт

Участник
Сообщения
158
Реакции
30
Ну так надо разобраться что именно не работает в этой конструкции и сделать чтоб работало
Думаю это нереально. Он же чужой код в свой как-то переводит, а что делает при этом — не показывает.
Я бегло глянул, нету в ОО функции ConvertNumbersToText. Следовательно, нужно руками делать. Заново.
 

_MBK_

Пикирующий бомбардировщик
12 лет на форуме
Сообщения
28 762
Реакции
9 454
Ну я ж не знаю какая там специфика, может ругается, ошибку выводит какую, если нет то самому отладочных печатей наставить, не?
 

Старкрафт

Участник
Сообщения
158
Реакции
30
Сегодня генерировал в либре штрихкоды ean-13, через файл с макросом excel от "Тирики". А там и код посложнее и форма на листе. И ничего, либра отработала без проблем. А вот нумерованный список в текст нет. Видимо это противоречит идеологии. Мол, нечего колхозить и уничтожать структуру. Хотя здря.
 

_MBK_

Пикирующий бомбардировщик
12 лет на форуме
Сообщения
28 762
Реакции
9 454
Сегодня генерировал в либре штрихкоды ean-13, через файл с макросом excel от "Тирики". А там и код посложнее и форма на листе. И ничего, либра отработала без проблем. А вот нумерованный список в текст нет. Видимо это противоречит идеологии. Мол, нечего колхозить и уничтожать структуру. Хотя здря.
Да там может какой то совершенно простецкий затык например, какого то незначащего метода нет или по другому называется, вы ж не хотите вглубь копать