Re: Сложнейшая задача для дилетанта

Написал wOxxOm в 01/06/2009 18:39:12

ну, код мой он просто создает нечто вроде массива, упорядоченного по координате X (.PositionX в вспомогательной функции collStuffSorted). Надо будет заменить на .SizeWidth.

так, раз сам разбираться будешь, то вот пару подсказок в неупорядоченном виде.

Параметр Direction в вызове collStuffSorted coll, s, -1 это направление сортировки.
Надо будет в начале добавить объявление dim s as shape
Еще заключить основной код в рамки процедуры:
Sub SortObj()
...основной код
End Sub

Function collStuffSorted......
......
end function

ну и самое главное двигать объекты на новые координаты в цикле:
dim obj as object ' на всякий случай если не пройдет перебор через 's'
for each obj in coll
set s=obj
'а дальше работать с 's' как с обычным объектом Shape
.............
.............
next

тут вместо ............ надо например
s.SetPosition curX, CurY
curX=curX+s.SizeWidth+10: if curX>ActivePage.SizeWidth then curX=10: cyrY=curY+100: if curY>ActivePage.SizeHeight then curX=10:curY=10: ActiveDocument.InsertPages 1, false, ActivePage.Index

ну и разумеется в начале процедуры SortObj поставить выбор миллиметров:
ActiveDocument.Unit = cdrMillimeter

ах, да - и в начале же для порядока можно объявить dim CurX#, CurY#: CurX=10: CurY=10

Источник: https://powerclip.ru/modules/newbb/viewtopic.php?post_id=98254

Rambler's Top100