[CDR X5-X8] Как изменить размер документа?

Статус
Закрыто для дальнейших ответов.

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851
Просветите несведущего
Мало того, что вы F1 нажать в VBредакторе не можете, вы еще и форум читаете невнимательно? См. мой пост выше - равняет селекшн строго по центру листа, самолично сейчас проверил 'rtfm'
 

BASMACH

10 лет на форуме
Сообщения
52
Реакции
8
Мало того, что вы F1 нажать в VBредакторе не можете, вы еще и форум читаете невнимательно? См. мой пост выше - равняет селекшн строго по центру листа, самолично сейчас проверил 'rtfm'
Не работает хоть тресни
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851
Что говорит?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851
Аааа, у вас небось корел старших версий?
Тогда так:
Код:
ActiveSelection.AlignAndDistribute cdrAlignDistributeHAlignCenter, cdrAlignDistributeVAlignCenter, cdrAlignShapesToCenterOfPage, cdrDistributeToSelection, False, cdrTextAlignBoundingBox
 
  • Спасибо
Реакции: BASMACH

foxix2006

Участник
Сообщения
24
Реакции
0
Подскажите , а как будет выглядеть макрос, где в многостраничном документе каждая страница будет иметь свой размер. Мне нужно много объектов с разными габаритами находящихся на одной странице распределить каждый на отдельную страницу с размером страницы по размеру объекта и экспортировать в PDF.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851
Как вы напишете так и будет '))'
 

foxix2006

Участник
Сообщения
24
Реакции
0
В представленном виде макрос делает один размер для всех страниц.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851
Который из вариантов вы имеете в виду? В тех вариантах, которые были предложены на предыдущих страницах, размер каждой страницы документа устанавливается индивидуально
 

foxix2006

Участник
Сообщения
24
Реакции
0
9 корела у меня нет как работает первый вариант я не знаю, а второй у меня работает так , берем скажем документ с тремя страницами на каждой странице прямоугольник (на каждой своих размеров) запускаем макрос первая страница стала размеров расположенного на ней объекта на второй и третей странице объекты остались на своих местах и размер всех страниц одинаковый. Берем переходим на вторую страницу и запускаем макрос, объект центрируется размер страницы становится по размеру прямоугольника, проверяем что на первой там размер страницы стал равный второй странице ну и с третьей тоже самое . Вот как то так. Подскажите что не так? И еще пробовал в х4 версии, не работает вообще, как исправить?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851
Попробуйте поменять
Код:
With ActiveDocument.MasterPage
на
Код:
With ActiveDocument.ActivePage
'hmmm'
 
  • Спасибо
Реакции: foxix2006

foxix2006

Участник
Сообщения
24
Реакции
0
Спасибо теперь работает. Подскажите еще что дописать чтоб макрос сам переходил на следующую страницу пока не проделает операцию со всеми страницами? И что изменить чтоб работал в х4 кореле?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851
Ну, вероятно, добавить перед ActivePage.Shapes...
Код:
For i = 1 To ActiveDocument.Pages.Count
ActiveDocument.Pages(i).Activate
а перед End Sub
Код:
Next i
А что в X4 не работает? Нормальное выравнивание по моему рецепту исправляли?
 

foxix2006

Участник
Сообщения
24
Реакции
0
В х4 выдает ошибку, по вашему рецепту пишет " Unable to execut VBA code while in break mode. " а через
SendKeys "p" открывает редактор макросов и выделяет эту строчку желтым цветом.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851
По моему рецепту #19 или #25 ?
 

foxix2006

Участник
Сообщения
24
Реакции
0
Вот так правильно?
Код:
Sub Pagesize()
ActiveDocument.Unit = cdrMillimeter
    Dim sel100 As Shape, pa As Currency
    
    For i = 1 To ActiveDocument.Pages.Count
ActiveDocument.Pages(i).Activate

ActivePage.Shapes.All.CreateSelection

    Set sel100 = ActiveSelection.Group
    ActiveSelection.AlignToPageCenter (cdrAlignHCenter)
    ActiveSelection.AlignToPageCenter (cdrAlignVCenter)
dl = ActiveShape.SizeWidth
sh = ActiveShape.SizeHeight
With ActiveDocument.ActivePage
        .SetSize dl, sh
          
    End With
 Next i
End Sub
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851
Если работает то правильно ;)
 

foxix2006

Участник
Сообщения
24
Реакции
0
Работает как из #25 в х8 , но в х4 не знаю как запустить перепробовал все варианты не работает ((
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 227
Реакции
10 851

foxix2006

Участник
Сообщения
24
Реакции
0
В х4 запускаю с центрированием
ActiveSelection.AlignToPageCenter (cdrAlignHCenter)
ActiveSelection.AlignToPageCenter (cdrAlignVCenter)
Вылетает ошибка "Unable to execut VBA code while in break mode."
с центрированием
SendKeys "p"
На скрине , нажимаю Debug открывается редактор и желтым цветом подсвечивается строчка SendKeys "p"
 

Вложения

  • 2016-11-09_16-01-05.png
    2016-11-09_16-01-05.png
    1.9 КБ · Просм.: 776
Статус
Закрыто для дальнейших ответов.