2014-12-13 3 views
0

Когда в документе выбраны некоторые слова и щелкните правой кнопкой мыши, следует вызвать функцию макроса. Или что-то вроде, пользовательский пункт меню правой кнопки мыши должен быть добавлен, и когда я нажимаю этот пункт меню, макрос должен вызываться.Добавить пользовательский пункт меню в щелчок правой кнопкой мыши событие

Например:

В документе У меня есть четыре цифра номера, как 2001 и 2010. Когда я выбираю четырехзначный номер и нажмите правую кнопку мыши и нажмите мой вариант пользовательского меню, макро следует назвать и выбрал четыре цифры нет , должен быть проанализирован вызываемой макрофункцией.

У меня есть код, но его для Excel, я не знаю, как его настроить для Microsoft Word.

Код для первенствует:

Const strMacro = "YourCode" 

Sub CreateMacro() 
    Dim cBut 
    Call KillMacro 
    Set cBut = Application.CommandBars("Cell").Controls.Add(Temporary:=True) 
    With cBut 
     .Caption = strMacro 
     .Style = msoButtonCaption 
     .OnAction = "Test_Macro" 
    End With 
End Sub 

Sub Test_Macro() 
    MsgBox "I work" 
End Sub 

Sub KillMacro() 
    On Error Resume Next 
    Application.CommandBars("Cell").Controls(strMacro).Delete 
End Sub 
+0

Какую версию Слова вы используете? Метод для этого зависит от того, используете ли вы Word с лентой. – Christina

+0

Microsoft Word 2007 – vidhya

ответ

0

для Microsoft Word 2007, я вставил код макроса, чтобы добавить параметр пользовательского меню в правом случае нажмите мыши и получить выделенный текст в функцию.

Macro:

Option Explicit 
Sub CreateMacro() 
    Dim MenuButton As CommandBarButton 
    With CommandBars("Text") 
     Set MenuButton = .Controls.Add(msoControlButton) 
     With MenuButton 
      .Caption = "Press Me" 
      .Style = msoButtonCaption 
      .OnAction = "Test_Macro" 
     End With 
    End With 
End Sub 

Sub Test_Macro() 
    MsgBox Selection.text 
End Sub 

Sub ResetRightClick() 
    Application.CommandBars("Text").Reset 
End Sub 
Смежные вопросы