Spell checking text boxes

D

Don Wiss

I protected a spreadsheet I'm responsible for and got complaints from users
that they could no longer spell check the text boxes from the Drawing menu.
Even though they were unprotected, the fact that the sheet was protected
gave an error message when the spell check was selected from the menu. No
big deal. I simply added a button to the left of each text box that calls a
macro that unprotects and spell checks. No doubt seeing the button will
increase the users checking. But after the macro is run all the text lines
in the text box are selected. I haven't found a way to unselect them. This
is the macro I'm using:

Sub SpellCheckCore(S As String)
' code to spell check text box. must be on sheet with box
' arg: name of text box in string

Application.ScreenUpdating = False

Dim Flag As Boolean
If ActiveSheet.ProtectContents Then
Flag = True
ActiveSheet.Unprotect
End If

ActiveSheet.Shapes(S).Select
Selection.CheckSpelling

If Flag Then ActiveSheet.Protect

End Sub

I'm using Excel 97.

Don <donwiss at panix.com>.
 
B

Bill Manville

Try adding
ActiveWindow.RangeSelection.Select
after
Selection.CheckSpelling

Bill Manville
MVP - Microsoft Excel, Oxford, England
No email replies please - reply in newsgroup
 
D

Don Wiss

Try adding
ActiveWindow.RangeSelection.Select
after
Selection.CheckSpelling

The problem with this is it takes their focus out of the text box and back
to the sheet, when it is very possible their focus was in the box when they
clicked the button.

Don <donwiss at panix.com>.
 
B

Bill Manville

Don said:
The problem with this is it takes their focus out of the text box and back
to the sheet, when it is very possible their focus was in the box when they
clicked the button.

OK.
Incidentally I don't see the original problem you reported (of all the text
lines being selected at the end of the macro. Which version of Excel are you
using? Are the buttons from the control toolbox or the forms toolbar?

Does this help:

Sub SpellCheckCore(S As String)
' code to spell check text box. must be on sheet with box
' arg: name of text box in string

Application.ScreenUpdating = False

Dim Flag As Boolean
If ActiveSheet.ProtectContents Then
Flag = True
ActiveSheet.Unprotect
End If

ActiveSheet.TextBoxes(S).CheckSpelling '<<<<<<

If Flag Then ActiveSheet.Protect

End Sub

Bill Manville
MVP - Microsoft Excel, Oxford, England
No email replies please - reply in newsgroup
 
D

Don Wiss

OK.
Incidentally I don't see the original problem you reported (of all the text
lines being selected at the end of the macro. Which version of Excel are you
using? Are the buttons from the control toolbox or the forms toolbar?

Excel 97. Buttons from Forms toolbar.
Does this help:
ActiveSheet.TextBoxes(S).CheckSpelling '<<<<<<

I'll try it at work today. I know this did not work:

ActiveSheet.Shapes(S).CheckSpelling

Don <donwiss at panix.com>.
 

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