making textbox to be auto sizable

S

s

I added a Textbox to a Word 2007 document by going
to the Developer option(in the File menu), then chose Design Mode,
then Legacy Tools->Text box Field. The MultiLine
and Enterkey properties are set to True and the rest
are default. The textbox is of size so that it can take some
10 rows of lines. Is there a feature I can choose/set so that
when more than 10 rows of lines are entered the text box
will automatically expand? The rows need to increase so the
textbox needs to expand downwards to accommodate the
text more than 10 lines.
Can someone please advise if there is an inbuilt way/feature to
do it in Word 2007 or do I have to use some VBA code to do that?

I set the AutoSize to true, but
when I go out of the Design mode and try entering text, the
Textbox shrinks to a size which can hold only one character
per line.
 
D

Doug Robbins - Word MVP

Why do you need to use that type of textbox?

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP, originally posted via msnews.microsoft.com
 
S

s

Doug said:
Why do you need to use that type of textbox?

We are sending out a word document to different users with certain
topics where they can write a few paragraphs about it. We are using a
Textbox as the widget where they can write about the topics. We expect
users will not write more than N number of words for each topic, but
in case they do, we want the textbox to increase in size so that they
can see the entire text they have written without scrolling and ensure
we can print the entire text when they send the document back to us,
if we wish to, without having to copy the text from the textbox to a
different document. Is there another way to achieve what we want?

Any suggestions would be appreciated.
 
F

Frank H

Use a table, 1 row, 1 column.
Set the table properties, advanced, so that the width will not resize.
Then the table can expand in height as someone types into it.
It you need to protect the document and use a form field, use the Legacy
Field / tools, and insert a plain old text form field.
 
S

s

Frank said:
Use a table, 1 row, 1 column.
Set the table properties, advanced, so that the width will not resize.
Then the table can expand in height as someone types into it.
It you need to protect the document and use a form field, use the Legacy
Field / tools, and insert a plain old text form field.

I did that. The only problem is if excess text is
typed in one row (which is more than the page width) it does not go
into the next row,
which is what we want.


Frank H
Rockford, IL
Thanks for the suggestion.
 
G

Graham Mayor

If you set the cell option to wrap the text then wrap it will.

If users can ignore the limits of the fixed space that you have provided,
then there doesn't seem a lot of point having a box layout in which to
enter text. You may as well simply insert a text form field in the body of
the document. You can print the content of the field simply enough with a
macro eg

Sub PrintField()
With ActiveDocument
.FormFields("Text1").Select
.PrintOut Range:=wdPrintSelection
End With
End Sub

or you can extract the content of fields to another document or data file -
http://www.gmayor.com/ExtractDataFromForms.htm

--
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
Graham Mayor - Word MVP


<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
 
S

s

Graham said:
If you set the cell option to wrap the text then wrap it will.

That did it. Thanks for the suggestion.
If users can ignore the limits of the fixed space that you have provided,
then there doesn't seem a lot of point having a box layout in which to
enter text. You may as well simply insert a text form field in the body of
the document. You can print the content of the field simply enough with a
macro eg

Sub PrintField()
With ActiveDocument
.FormFields("Text1").Select
.PrintOut Range:=wdPrintSelection
End With
End Sub

or you can extract the content of fields to another document or data file -
http://www.gmayor.com/ExtractDataFromForms.htm

Thanks for that information also.

 

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