Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Меню в WORD (как сделать?) / 5 сообщений из 5, страница 1 из 1
18.04.2006, 11:53
    #33673058
Mbus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Меню в WORD (как сделать?)
Вот делаю так
1. пишу макрос
2. вытаскиваю его на панельку

А можно ли как-нить написать макрос так, чтобы он сам формировал панель или меню?

И еще а как сделать выпадающее меню или кнопки на панели? даже в ручную не знаю как.
...
Рейтинг: 0 / 0
18.04.2006, 14:15
    #33673621
Mbus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Меню в WORD (как сделать?)
Вот написала так:

авторSub podpis_menu()

Set MainMenu = CommandBars("Menu Bar").Controls.AddType:=msoControlPopup, Temporary:=True)
MainMenu.Caption = "MAIN"

Set SubMenu = MainMenu.CommandBar.Controls.Add(Type:=msoControlButton, ID:=1)
With SubMenu
.Caption = "Вставить картинку"
.OnAction = "img"
End With


End Sub

Sub img(fio)

Selection.InlineShapes.AddPicture filename:="D:\img\" + fio + "_g.png", _
LinkToFile:=False, SaveWithDocument:=True

End Sub

В результате выполнения макроса формируется меню MAIN с подменю ВСТАВИТЬ КАРТИНКУ

Если щеокнуть по кнопке, то долна выполнится функция IMG
Если она без параметров, то работает в таком варианте, но если есть параметр (FIO в данном случае), то я не знаю как его передать...что-тов се на синтаксическую ошибку жалуется, т.е. надо правильно написать строку , выделенную красным шрифтом
...
Рейтинг: 0 / 0
18.04.2006, 15:33
    #33673894
Ashton
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Меню в WORD (как сделать?)
Код: 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.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
Public Sub CreateMenu()
    Dim cb As CommandBar
    Dim cbMenu As CommandBarControl

    ' Создание строки меню.
    Set cb = Application.CommandBars.Add( _
      Name:="CommandBar1", _
      Position:=msoBarTop, _
      MenuBar:=True, _
      Temporary:=True)
    
    ' Создание выпадающего меню.
    Set cbMenu = cb.Controls.Add( _
      Type:=msoControlPopup, _
      Temporary:=True)
    
    cbMenu.Caption = "Main"
    
    ' Добавление пункта меню.
    With cbMenu.Controls.Add( _
      Type:=msoControlButton, _
      Temporary:=True)
        .Caption = "Вставить картинку"
        
        ' 1. Можно так передать параметр.
        .OnAction = "img"
        .Parameter = "Фамилия"
        
        ' 2. Или так.
        '.OnAction = "img ""Фамилия""'"
    End With
    
    cb.Visible = True
    
    Set cbMenu = Nothing
    Set cb = Nothing
End Sub

Public Sub img( _
  Optional fio As String = "")
    ' 1.
    MsgBox "D:\img\" & _
      Application.CommandBars.ActionControl.Parameter & "_g.png"
    
    ' 2.
    'MsgBox "D:\img\" & _
    '  fio & "_g.png"

    'Selection.InlineShapes.AddPicture Filename:="D:\img\" + fio + "_g.png", _
    '  LinkToFile:=False, SaveWithDocument:=True
End Sub

Хотел бы пару слов добавить. В Word 2000 - второй вариант не прокатывает. В Excel 2000 - второй вариант работает, если установить самый низкий уровень безопасности.
...
Рейтинг: 0 / 0
18.04.2006, 17:34
    #33674318
Ashton
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Меню в WORD (как сделать?)
Во втором варианте одинарную кавычку пропустил.

Код: plaintext
    '.OnAction = "'img ""Фамилия""'"
...
Рейтинг: 0 / 0
19.04.2006, 08:09
    #33675192
Mbus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Меню в WORD (как сделать?)
СПАСИБО!
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Меню в WORD (как сделать?) / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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