Solved

i need a macro to add 'insert bookmark' to my right click menu

Posted on 2004-10-13
10
314 Views
Last Modified: 2008-05-09
well the title says it all really, could someone please write me a macro that will add the insert bookmark function to the right click menu in Word 2002.  i want to be able to save the macro in the normal template so that it will be available in all word docs.

thanks,

nick
0
Comment
Question by:nick_harambee
  • 5
  • 4
10 Comments
 
LVL 9

Expert Comment

by:Shahid Thaika
ID: 12299414
Does opening the Main template (Normal.dot) and then saving the customized template help, rather that making a macro and running it every time.
0
 

Author Comment

by:nick_harambee
ID: 12299431
i have a few macros in my normal template that work fine in all word docs (and i am clear on how to do this), what i need is the specific macro for adding insert bookmark to the right click menu,

nick.
0
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 12299514
The context-sensitive right-click pop-up is not exposed for modification. You will need a button if you want to make it a bit quicker to add bookmarks.
0
 

Author Comment

by:nick_harambee
ID: 12299542
oh, well someone recently sent me a macro for adding 'paste unformatted text' to the right click menu, one macro for tables, and one for plain documents, and this works fine...so i figured this would be possible for other functions.

nick.
0
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 12299616
Well it's not the first time I've been completely wrong and it won't be the last. Perhaps you could post or point to it and we can adapt it for your new purpose.
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 

Author Comment

by:nick_harambee
ID: 12299655
here is the macro that adds 'paste unformatted text' to the right click menu for both table and standard document.  maybe you could adapt it.  i won't be needing to insert bookmarks into tables so the macro should hopefully be simpler....

Private Sub Document_Open()
   
    Call AddPasteSpecial

End Sub

Private Sub Document_New()
   
    Call AddPasteSpecial

End Sub
 
Sub AddPasteSpecial()

Dim cb              As CommandBar
Dim c               As CommandBarButton
   
    Set cb = Application.CommandBars("Table Text")
    Set c = cb.FindControl(, , "VBAxPasteSpec")
    If Not c Is Nothing Then
        c.Delete
    End If
    Set c = cb.Controls.Add(msoControlButton, , , 4, True)
    With c
        .Caption = "Paste Unformatted Text"
        .Style = msoButtonCaption
        .TooltipText = "Paste Special"
        .Tag = "VBAxPasteSpec"
        .OnAction = "PasteUnformattedText"
    End With
   
    Set cb = Application.CommandBars("Text")
    Set c = cb.FindControl(, , "VBAxPasteSpec")
    If Not c Is Nothing Then
        c.Delete
    End If
    Set c = cb.Controls.Add(msoControlButton, , , 4, True)
    With c
        .Caption = "Paste Unformatted Text"
        .Style = msoButtonCaption
        .TooltipText = "Paste Special"
        .Tag = "VBAxPasteSpec"
        .OnAction = "PasteUnformattedText"
    End With
   
End Sub

Sub PasteUnformattedText()

    Selection.PasteSpecial Link:=False, DataType:=wdPasteText, Placement:= _
        wdInLine, DisplayAsIcon:=False

End Sub
0
 
LVL 76

Accepted Solution

by:
GrahamSkan earned 500 total points
ID: 12299992
Thanks for that, I'd given up trying to find which command bar(s) were called by righ-click & and had decided that they weren't available at all.

Given that knowledge, the job was simple:

Option Explicit

Sub AddInsertBookMark()

Dim cb              As CommandBar
Dim c               As CommandBarButton
   
    Set cb = Application.commandbars("Table Text")
    Set c = cb.FindControl(, , "VBAxInsertBookmark")
    If Not c Is Nothing Then
        c.Delete
    End If
    Set c = cb.Controls.Add(msoControlButton, , , 4, True)
    With c
        .Caption = "Insert Bookmark"
        .Style = msoButtonCaption
        .TooltipText = "Insert Bookmark"
        .Tag = "VBAxInsertBookmark"
        .OnAction = "InsertBookmark"
    End With
   
    Set cb = Application.commandbars("Text")
    Set c = cb.FindControl(, , "VBAxInsertBookmark")
    If Not c Is Nothing Then
        c.Delete
    End If
    Set c = cb.Controls.Add(msoControlButton, , , 4, True)
    With c
        .Caption = "Insert Bookmark"
        .Style = msoButtonCaption
        .TooltipText = "Insert Bookmark"
        .Tag = "VBAxInsertBookmark"
        .OnAction = "InsertBookmark"
    End With
   
End Sub

Sub InsertBookmark()
Application.Dialogs(wdDialogInsertBookmark).Show
End Sub
0
 

Author Comment

by:nick_harambee
ID: 12300034
thanks graham

all seems to be working fine

i have accepted your answer

nick
0
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 12300250
T
0
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 12300259
Thanks Nick
For the interaction , the lesson, the points and the grade.
Cheers, Graham
0

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

There is a feature provided by MS Word that lets you create an Table of Contents for your Word document automatically. To use this feature for other documents there are two steps involved,   1.  Prepare your document for a table of contents (he…
The Selection object is designed for user interaction. It has a Range property, so it can be used in most places that a Range object can. Recorded macros must use the Selection because they are simply copying what the user is doing. A Range prope…
This video walks the viewer through the process of creating a watermark for their document, customizing it, and saving it for viewing/printing needs.
This video shows where to find the word count, how to display it, and what it breaks down to in Microsoft Word.

746 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now