Ciao a tutti/e,
ho un problema che sembra irrisolvibile.![]()
Il codice che allego è una macro word che crea n pagine, in ognuna di queste vengono create 2 caselle di testo disposte tipo colonne. In fine tutte le caselle di testo che stanno a formare le colonne di sinistra vengono concatenate tra di loro lo stesso fanno quelle a destra.
In pratica la macro serve a creare fogli con colonne indipendenti.
La macro sembra funzionare ma se richiedo tanti fogli (es. 50 o 100) o li crea in posizione sbagliata o non li riesce a concatenare.
Aiuto!![]()
Ciao :tongue:
Sub imposta_caselle()
Dim n As Integer
Dim i As Integer
'crea
n = InputBox("Quante pagine vuoi?", "")
i = 1
While (i <= n)
Selection.TypeParagraph
Selection.TypeParagraph
Selection.TypeParagraph
ActiveDocument.Shapes.AddTextbox(msoTextOrientatio nHorizontal, 56.7, 70.85, 234#, 702#).Select
ActiveDocument.Shapes.AddTextbox(msoTextOrientatio nHorizontal, 306.7, 70.85, 234#, 702#).Select
ActiveDocument.Shapes.AddTextbox(msoTextOrientatio nHorizontal, 0, 0, 1#, 1#).Select
Selection.ShapeRange.Delete
Selection.MoveDown Unit:=wdLine, Count:=4
Selection.InsertBreak Type:=wdPageBreak
i = i + 1
DoEvents
Wend
'concatena sx
i = 2 'inizio
While (i <= ((n - 1) * 3))
nome1 = "Text Box " & (i)
nome2 = "Text Box " & (i + 3)
ActiveDocument.Shapes(nome1).Select
Selection.ShapeRange.TextFrame.Next = ActiveDocument.Shapes(nome2).TextFrame
i = i + 3
Wend
'concatena dx
i = 3 'inizio
While (i <= ((n - 1) * 3))
nome1 = "Text Box " & (i)
nome2 = "Text Box " & (i + 3)
ActiveDocument.Shapes(nome1).Select
Selection.ShapeRange.TextFrame.Next = ActiveDocument.Shapes(nome2).TextFrame
i = i + 3
Wend
End Sub