1

Тема: Word 2003 и позиции панелей ProLing Office

Здравствуйте!
(Office 2003 SP3)
Не могу справиться с панелями инструментов от ProLing Office последней редакции (ProLing Office 5.0 SP2) – при открытии Word они постоянно оказываются плавающими по центру экрана, хотя я их перемещаю в область со всеми панелями. Пробовал редактировать панели, создавать новую на их основе - ничего не помогает. Даже если их отключить через «Сервис» - «Настройка…», они появляются в том же месте при новом старте Word. В старых версиях тоже была такая проблема, но она решалось принудительным сохранением Normal.dot, теперь и это не помогает. Подскажите, пожалуйста, как сохранить позиции этих панелей после закрытия?
Спасибо!

Word 2003 и позиции панелей ProLing Office

2

Re: Word 2003 и позиции панелей ProLing Office

Как вариант: создать новую панель и перетащить на нее кнопки с другой панели. Сохранить в Normal. При перетаскивании, удерживать Ctrl - копирование. Потом, скрыть или удалить (Ctrl+F8 > Организатор > Панели) старую панель.

Макросы под заказ и готовый пакет - mtdmacro.ru

3

Re: Word 2003 и позиции панелей ProLing Office

Спасибо, Вождь, но не помогло.
Удалил через организатор, перезапустил Word - опять панели восстановились на прежнем месте. Может быть вы знаете, откуда они могут ещё стартовать? В обоих "STARTUP-ах" пусто, удалял старый Normal.dot - грешил, что он испорчен, создал потом новый с переименованными панелями, но при перезапуске стоковые ProLing панели появились на прежних местах (наряду с новыми, которые создал я)...
Мозг закипает! Где ещё копать?

4

Re: Word 2003 и позиции панелей ProLing Office

Попробуйте не удалять панели, а просто скрыть, через меню Вид.

Установленные надстройки см. тут: Word 2003 > Сервис > Шаблоны и надстройки > Шаблоны. Там же есть путь к файлу надстройки.

По ProLing ничего не скажу, не использовал. Надо читать ее документацию. Может возможность скрыть панели заложена в надстройку. Если надстройка сама проверяет свои панели, и восстанавливает их, то поможет только такой вариант. Или обратится в поддержку.

Гляньте диалог Макросы (Alt+F8). Что там за макросы есть от ProLing. Может что полезное?

Макросы под заказ и готовый пакет - mtdmacro.ru

5

Re: Word 2003 и позиции панелей ProLing Office

Спасибо за попытку. Так тоже пробовал. Они не убиваемые. Буду каждый сеанс их гасить вручную.  sad

6

Re: Word 2003 и позиции панелей ProLing Office

Ну, обойти можно что угодно smile Достаточно, на запуск Word, повесить макрос, настраивающий панели как угодно пользователю. Поместите в модуль ThisDocument шаблона Normal следующий код (Alt+F11):

Option Explicit

Sub AutoExec() ' старт Word
    Call CommandBar_Options
End Sub

Sub CommandBar_Options()
    ' счетчик
Static TryCount As Byte
    TryCount = TryCount + 1
    ' панель
Dim CB As CommandBar
    On Error Resume Next
    Set CB = Word.CommandBars("Имя панели") ' имя
    On Error GoTo 0
    ' рано - надстройка не загружена
    If CB Is Nothing Then
        If TryCount > 5 Then Exit Sub
        Word.Application.OnTime When:=Now + TimeSerial(0, 0, 1), _
                                Name:="CommandBar_Options", _
                                Tolerance:=0
    ' настройка панели
    Else
        CB.Visible = True ' видимость
        CB.Position = msoBarFloating ' позиция
        'CB.Left = 100 ' X
        'CB.Top = 100 ' Y
    End If
End Sub

Только, замените "Имя панели" на имя панели ProLing - гляньте в меню Вид. И парметрамы Visible, Position, Left, Top подправьте, как вам удобно, если надо.

Макросы под заказ и готовый пакет - mtdmacro.ru

7

Re: Word 2003 и позиции панелей ProLing Office

Спасибо!
Костыли подошли. Хотя не особо люблю плодить макросы, но что поделать...
У меня получилось так для 2х панелей:

Option Explicit

Sub AutoExec() ' старт Word
    Call CommandBar_Options
End Sub

Sub CommandBar_Options()
    ' счетчик
Static TryCount As Byte
    TryCount = TryCount + 1
    ' панель
Dim PB As CommandBar
Dim RB As CommandBar
    On Error Resume Next
    Set PB = Word.CommandBars("PlajBar") ' Имя панели 1
    Set RB = Word.CommandBars("RutaBar") ' Имя панели 2
    On Error GoTo 0
    ' рано - надстройка не загружена
    If PB Is Nothing Then
        If TryCount > 5 Then Exit Sub
        Word.Application.OnTime When:=Now + TimeSerial(0, 0, 1), _
                                Name:="CommandBar_Options", _
                                Tolerance:=0
    ' настройка панели 1
    Else
        PB.Visible = False ' видимость
        PB.Position = msoBarFloating ' позиция
        'PB.Left = 100 ' X
        'PB.Top = 100 ' Y
    End If
    If RB Is Nothing Then
        If TryCount > 5 Then Exit Sub
        Word.Application.OnTime When:=Now + TimeSerial(0, 0, 1), _
                                Name:="CommandBar_Options", _
                                Tolerance:=0
    ' настройка панели 2
    Else
        RB.Visible = False ' видимость
        RB.Position = msoBarFloating ' позиция
        'RB.Left = 100 ' X
        'RB.Top = 100 ' Y
    End If
End Sub

Наверно можно было как-то оптимальней написать, но в кодинге я ни в зуб ногой...  Работает, и ладно. roll