Sub SplitDocs ()
Amortiguar TotalLines como de largo
Amortiguar x como de largo
Amortiguar a grupos () como de largo
Amortiguar al revés como de largo
Amortiguar y como de largo
Amortiguar FilePath como secuencia
Amortiguar el nombre de fichero () como secuencia
FilePath = ActiveDocument.Path
Selection.GoTo qué: =wdGoToLine, que: =wdGoToAbsolute, cuenta: =1
Hacer
TotalLines = Selection.Range.Information (wdFirstCharacterLineNumber)
Unidad de Selection.MoveDown: =wdLine, cuenta: =1
Colocar mientras que TotalLines <> Selection.Range.Information (wdFirstCharacterLineNumber)
Selection.GoTo qué: =wdGoToLine, que: =wdGoToAbsolute, cuenta: =1
Para x = 1 a TotalLines
Unidad de Selection.EndKey: El =wdLine, extiende: =wdExtend
intStartPos déviles, intEndPos
intStartPos = InStr (Selection.Text, "")
Si intStartPos > 0 entonces
Contador = + 1 contrario
Grupos del coto de ReDim (1 al contador)
Nombre de fichero del coto de ReDim (1 al contador)
Grupos (contrarios) = x
Unidad de Selection.EndKey: El =wdLine, extiende: =wdExtend
Nombre de fichero (contrario) = mediados de (Selection.Text, intStartPos + 10, intEndPos - (intStartPos + 10))
Unidad de Selection.HomeKey: El =wdLine, extiende: =wdExtend
Terminar si
Unidad de Selection.HomeKey: =wdLine
Unidad de Selection.MoveDown: =wdLine, cuenta: =1
Después
Contador = + 1 contrario
Grupos del coto de ReDim (1 al contador)
Grupos (contrarios) = TotalLines
Para x = 1 a UBound (grupos) - 1
y = grupos (x + 1) - grupos (x)
Selection.GoTo qué: =wdGoToLine, que: =wdGoToAbsolute, cuenta: =Groups (x)
Unidad de Selection.MoveDown: =wdLine, cuenta: =y, extender: =wdExtend
Selection.Copy
Documents.Add
Selection.Paste
ActiveDocument.SaveAs FilePath y “\” y nombre de fichero (x) y “.doc”
ActiveDocument.Close
X siguiente
Submarino del extremo
|