Question : How do I select multiple frames/text boxes in Word 2007

I have a word doc with numerous text boxes, each with a frame.  (it came as an rtf out of crystal reporting).  I want to select a group of about 20 of these boxes and move them en mass to a spot higher on the page.  There are probably 400 text boxes with individual frames in the document.  Right now, I can only select one framed text box at a time and I can move that but then I need to do the next.  I have tried holding down shift plus click,  holding down ctl plus shift and each time it only selects one.  I don't want to do a macro.  Isn't there a simple way to do this????????????  THANKS for any help!!!!!!!!!!!!!!  Oh yes,  if I individually delete the frames,  the text jumps up to the top of the page past other text boxes.

Answer : How do I select multiple frames/text boxes in Word 2007

Hi North_Side,

I went deeply in the problem and composed a macro that converts frames to textboxes.
It is not 100% universal but gives acceptable results on files you provided.
You may place this macro in Normal.dot and it will be always available by pressing Alt+F8 - 2click on macro name.
The process is rather time-consuming so I added progress report to status bar.
Please try. I also inserted macro in the document you provided.

Alex
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
'---------------------------------------------------------------------------------------
' Procedure : Frames2TextBoxes
' Author    : Alexey Egorov, [email protected]
' Date      : 11-Jul-2010
' Purpose   : Replaces all frames in active document with textboxes keeping position.
' Topic     : http://www.experts-exchange.com/Microsoft/Applications/Q_26319089.html
'---------------------------------------------------------------------------------------
Sub Frames2TextBoxes()
Dim aF() As Word.Frame, f As Word.Frame, t As Word.Shape, i As Long, n As Long
Dim stbar As Boolean
On Error GoTo err_
Application.ScreenUpdating = False
stbar = Application.DisplayStatusBar
n = ActiveDocument.Frames.Count
ReDim aF(n)
For i = 1 To n
    Set aF(i) = ActiveDocument.Frames(i)
Next

For i = 1 To n
    Application.StatusBar = Format(i, """Converting ""####") & Format(n, """ of ""####")
    Set f = aF(i)
    f.Range.Select
    Selection.CreateTextbox
    Set t = Selection.ShapeRange(1)
    t.RelativeHorizontalPosition = wdRelativeHorizontalPositionPage
    t.RelativeVerticalPosition = wdRelativeVerticalPositionPage
    t.Width = f.Width
    t.Height = f.Height
    t.Left = f.HorizontalPosition
    t.Top = f.VerticalPosition
    
    With t.TextFrame
        .MarginBottom = 0
        .MarginLeft = 0
        .MarginRight = 0
        .MarginTop = 0
    End With
    t.Line.Visible = msoFalse
Next
exit_here:
Application.ScreenUpdating = True
Application.DisplayStatusBar = stbar

Exit Sub

err_:
MsgBox Err.Description, vbCritical
Resume exit_here
End Sub
Random Solutions  
 
programming4us programming4us