Количество страниц в файле

  • Автор темы Автор темы izrukvruki
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

izrukvruki

Топикстартер
15 лет на форуме
Сообщения
1 881
Реакции
311
Нужно сделать макрос, чтоб он с заданными параметрами делал экспорт страницы в jpg

exp_jpg= это путь с именем файла

Для текущей странице сделал так и работает:
Set expJPGfiltr = ActiveDocument.ExportBitmap(exp_jpg + ".jpg", cdrJPEG, cdrCurrentPage, _
opt.ImageType, , , opt.ResolutionX, opt.ResolutionY, opt.AntiAliasingType, , , opt.UseColorProfile)
With expJPGfiltr
.Progressive = False
.Optimized = True
.Compression = 10
.Smoothing = 5
.Finish
End With

Добавил в форму еще опцию, чтоб можно было все страницы разом экспортировать... Но не знаю как сделать постраничный экспорт... Как перебрать все страницы?
 
надо еще в имя вставлять текущую переменную... чтоб имена были разные... мне кажется что проще так:

for i = 1 to ????
Set expJPGfiltr = ActiveDocument.ExportBitmap(exp_jpg + i+".jpg", cdrJPEG, СТРАНИЦУ i
 
говорят еще лучше перед экспортом активизировать страницу, хотя может врут.
For Each pg In ActiveDocument.Pages
pg.Activate
Set expJPGfiltr = ActiveDocument.ExportBitmap(exp_jpg + pg.index+".jpg", cdrJPEG, pg, _
opt.ImageType, , , opt.ResolutionX, opt.ResolutionY, opt.AntiAliasingType, , , opt.UseColorProfile)
...
next pg
 
Dim expJPGfiltr As ExportFilter

Что-то на этом месте стопорится
Set expJPGfiltr...

Видимо он не может в одну переменную создать много объектов экспорта...
 
вот ошибку выдает:
vba.png
 
Помоги тогда, как мне после
For Each pg In ActiveDocument.Pages
pg.Activate
активную страницу экспортировать?
 
exp_jpg + pg.index+".jpg"
заменить на
exp_jpg + str(pg.index)+".jpg"
 
cdrJPEG, pg, _
вернуть в старый вариант
cdrJPEG, cdrCurrentPage, _
 
УРАААА! ЗарЯботало!!! Огромное спасибо!!!
 
Третья ссылка рулит. Спасибо, но уже поздно
 
Макрос насколько помню был бесплатный, если кому надо пишите в личку, скину.
 
Статус
Закрыто для дальнейших ответов.