Converting Excel VBA into Word VBA?

P

PDF Programmer

I've got the code for an Excel popup utility that adds a date entry
option to the command bar. I'm trying to figure out how to convert
it
to work within a Word document. Can anybody help me convert the
code? Here it is from Excel:

' append the date entry option to the default command bar when
worksheet opens
Private Sub Workbook_Open()
Dim NewControl As CommandBarControl
' Assign shortcut to display calendar on SHIFT+CTRL+C
Application.OnKey "+^{C}", "Module1.OpenCalendar"
' Add item to shortcut menu on open
On Error Resume Next
Application.CommandBars("Cell").Controls("Insert Date").Delete
On Error GoTo 0
Set NewControl = Application.CommandBars("Cell").Controls.Add
With NewControl
.Caption = "Insert Date"
.OnAction = "Module1.OpenCalendar"
.BeginGroup = True
End With
End Sub


'remove the date entry option from the default command bar right
before doc closes
Private Sub Workbook_BeforeClose(Cancel As Boolean)
' Delete item from shortcut menu on close
On Error Resume Next
Application.CommandBars("Cell").Controls("Insert Date").Delete
End Sub
 
J

Jean-Guy Marcil

PDF Programmer was telling us:
PDF Programmer nous racontait que :
I've got the code for an Excel popup utility that adds a date entry
option to the command bar. I'm trying to figure out how to convert
it
to work within a Word document. Can anybody help me convert the
code? Here it is from Excel:

' append the date entry option to the default command bar when
worksheet opens
Private Sub Workbook_Open()
Dim NewControl As CommandBarControl
' Assign shortcut to display calendar on SHIFT+CTRL+C
Application.OnKey "+^{C}", "Module1.OpenCalendar"
' Add item to shortcut menu on open
On Error Resume Next
Application.CommandBars("Cell").Controls("Insert Date").Delete
On Error GoTo 0
Set NewControl = Application.CommandBars("Cell").Controls.Add
With NewControl
.Caption = "Insert Date"
.OnAction = "Module1.OpenCalendar"
.BeginGroup = True
End With
End Sub


'remove the date entry option from the default command bar right
before doc closes
Private Sub Workbook_BeforeClose(Cancel As Boolean)
' Delete item from shortcut menu on close
On Error Resume Next
Application.CommandBars("Cell").Controls("Insert Date").Delete
End Sub

Here is something to get you going.

You may need to add code depending on what you want to happen to the button
you create after the document is closed..

'_______________________________________
Private Sub Document_Open()

Dim NewControl As CommandBarControl

CustomizationContext = ActiveDocument

'Assign shortcut to display calendar on SHIFT+CTRL+C
KeyBindings.Add KeyCategory:=wdKeyCategoryMacro, _
Command:="Module1.OpenCalendar", _
KeyCode:=BuildKeyCode(wdKeyShift, wdKeyControl, wdKeyC)

'Add item to shortcut menu on open
On Error Resume Next
Application.CommandBars("Header and Footer").Controls("Date").Delete
On Error GoTo 0
Set NewControl = Application.CommandBars("Header and
Footer").Controls.Add(msoControlButton)
With NewControl
.Caption = "Insert Date"
.OnAction = "Module1.OpenCalendar"
.BeginGroup = True
'One of those undocumented properties...
.Style = msoButtonCaption
End With

End Sub
'_______________________________________

--

Salut!
_______________________________________
Jean-Guy Marcil - Word MVP
(e-mail address removed)
Word MVP site: http://www.word.mvps.org
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top