Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
DiscussionsAccessExcelInfoPathOutlookPowerPointPublisherWord
DirectoryUser Groups
Related Topics
Outlook ExpressInternet ExplorerWindowsMS Server ProductsMore Topics ...

MS Office Forum / Word / Programming / September 2007

Tip: Looking for answers? Try searching our database.

Disable Command Button

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Tendresse - 17 Sep 2007 03:50 GMT
Hi all,
I would like to add a line to my VBA code to disable a command button called
"Delete Person". I'm not sure how to refer to the button though. The
following attempt didn't work:

ActiveDocument.Range.CommandButton("Delete Person").Enabled = False

I'm using Word 2003.

Many thanks
Tendresse
Greg Maxey - 17 Sep 2007 12:35 GMT
Note while your caption might read Delete Person.  That is not a valid name
for a document control.

If you already know the index number of the control you can use a single
line:

Sub Scratchmacro

ActiveDocument.InlineShapes(1).OLEFormat.Object.Enabled = False

End Sub

If there are multiple controls or other inlineshapes then you will need
something like this:

Sub Scratchmacro

ActiveDocument.InlineShapes(GetIndex).OLEFormat.Object.Enabled = False

End Sub

Function GetIndex() As Long

Dim i As Long

Dim oILS As InlineShape

For Each oILS In ActiveDocument.Range.InlineShapes

i = i + 1

If oILS.Type = wdInlineShapeOLEControlObject Then

   If InStr(oILS.OLEFormat.Object.Name, "CommandButton1") > 0 Then

     Exit For

   End If

 End If

Next oILS

GetIndex = i

End Function

Signature

Greg Maxey/Word MVP
See:
http://gregmaxey.mvps.org/word_tips.htm
For some helpful tips using Word.

> Hi all,
> I would like to add a line to my VBA code to disable a command button
[quoted text clipped - 8 lines]
> Many thanks
> Tendresse
Tendresse - 18 Sep 2007 01:28 GMT
Thanks for your help, Greg. Much appreciated.

> Note while your caption might read Delete Person.  That is not a valid name
> for a document control.
[quoted text clipped - 55 lines]
> > Many thanks
> > Tendresse
fumei - 25 Sep 2007 18:13 GMT
Not exactly sure.. is this an ActiveX commandbutton IN the document?

If so, you can action it directly, by name.  Say it is CommandButton1 (and
you should actually change your names from the defaults....)

Within the ThisDocument module:

CommandButton1.Enabled = False

Within any standard module:

ThisDocument.CommandButton1.Enabled = False

You do not need the index number.

Rate this thread:






 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.