TextBox Characters Method - Need Help

M

MarkCR

Greetings:

I have the following line in an Excel VBA Macro:

ActiveChart.Shapes.AddTextbox(msoTextOrientationHorizontal, 500, 80, 120,
60).Select
Selection.AutoScaleFont = False
Selection.Characters(Start:=1, Length:=23).Font.Name = "Arial"

It runs perfectly well under Excell 2003, but under Excel 2007, I get the
following, very unhelpful, error message:

"Runtime error: 1004
Unable to get the Characters property of the TextBox class."

Sooo, what does unable to "get" the property mean. It doesn't exist? Has it
been removed? Am I not using it properly? Most important: What has changed in
Excel 2007 that this no longer works?

Thank you,
Mark
 
D

Dave Peterson

From what I've read in the newsgroup, xl2007 has trouble when you select shapes.

Maybe you could do it without the selection:

Dim myTB As Shape
Set myTB = ActiveChart.Shapes.AddTextbox _
(msoTextOrientationHorizontal, 500, 80, 120, 60)

myTB.OLEFormat.Object.AutoScaleFont = False
myTB.OLEFormat.Object.Characters(Start:=1, Length:=23).Font.Name = "Arial"
 
M

MarkCR

Hi Dave:

Thanks for your response. It seemed like the right answer, but I am getting
the same error on the line:

myTB.OLEFormat.Object.Characters(Start:=1, Length:=23).Font.Name = "Arial"

Very strange...
Mark
 
D

Dave Peterson

Sorry.

Try:

myTB.OLEFormat.Object.AutoScaleFont = False
myTB.TextFrame.Characters.Text = "asdfasdfasdfasdfasdfasdf"
myTB.TextFrame.Characters(Start:=1, Length:=23).Font.Name = "Arial"
 

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