Число страниц EXEL документа через OLE

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
vvmaster
Новичок
Сообщения: 6
Зарегистрирован: 04 Август 2008, 17:58

Число страниц EXEL документа через OLE

Сообщение vvmaster »

Подскажите, как получить общее число страниц документа EXEL через OLE ?
Ну и заодно номер активной станицы тоже :)

Еще один вопрос в догонку:
Как задать имя ячейке и потом обратится к ней именно по имени а не по адресу?
Многие знания порождают многие печали.
Аватара пользователя
WadimZapara
Активист
Сообщения: 181
Зарегистрирован: 11 Июнь 2008, 12:11
Откуда: Тамбов

Re: Число страниц EXEL документа через OLE

Сообщение WadimZapara »

недоперепонял вопроса
число листов в книге или печатных страниц на листе ?

а далее - в EXCEL'е делать то, что спрашиваешь умеешь?
если нет - так используй запись макроса, чтоб увидеть.
всё прозрачно
Компьютер имеет то преимущество перед мозгом, что им пользуются...
vvmaster
Новичок
Сообщения: 6
Зарегистрирован: 04 Август 2008, 17:58

Re: Число страниц EXEL документа через OLE

Сообщение vvmaster »

С именем ячейки разобрался.
Пытаюсь получить количество печатных страниц на листе .

n#=cole{'Application.Sheets.Count'} всегда возвращает 2 :(
Может не то это?

И как при помощи записи макроса посмотреть количество печатных страниц я не понял

С EXEL-м действительно знаком мало, а шеф требует срочно формировать EXEL отчеты

P.S. Sheets.Count действительно не то - это количество листов в книге :(
Кстати - лист только один а выдает 2 :(

А вот где хранится количество печатных страниц на листе так и не нашел, как и номер текущей страницы
Последний раз редактировалось vvmaster 05 Август 2008, 12:28, всего редактировалось 1 раз.
Многие знания порождают многие печали.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8034
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 96 раз

Re: Число страниц EXEL документа через OLE

Сообщение Игорь Столяров »

А я если честно, вообще не понимаю как можно "посмотреть" кол-во печатных листов ...
Этот показатель как минимум зависит от драйвера принтера, раскладки отчета, отступов печатного листа ...
Можно в саму таблицу MS Excel вставить печать номера страницы и кол-во листов, но определены эти
значения будут на момент печати (или предварительного просмотра) отчета.
Make Clarion Great Again ! 😎
vvmaster
Новичок
Сообщения: 6
Зарегистрирован: 04 Август 2008, 17:58

Re: Число страниц EXEL документа через OLE

Сообщение vvmaster »

Все очень просто:
Например в накладной есть поле "Товарная накладная имеет продолжение на _____ листах"
и это поле необходимо заполнить.
А насчет полей и драйвера принтера - то поля заданы жестко в документе, как и размер бумаги, так что с этим проблем нет.

>Можно в саму таблицу MS Excel вставить печать номера страницы и кол-во листов, но определены эти
>значения будут на момент печати (или предварительного просмотра) отчета.

Никак нет - эти данные есть и в режиме работы с накладной - они светятся в левом нижнем углу.
Вот как их оттуда получить?
Многие знания порождают многие печали.
Аватара пользователя
WadimZapara
Активист
Сообщения: 181
Зарегистрирован: 11 Июнь 2008, 12:11
Откуда: Тамбов

Re: Число страниц EXEL документа через OLE

Сообщение WadimZapara »

1) Application.Sheets.Count - заданное в EXCEL число рабочих листов, с которым создаётся (по умолчанию) новая книга.
2) Количество имеющихся рабочих листов в активной книге - ActiveWorkBook.WorkSheets.Count, а в заданной - WorkBooks(имя_или_номер).WorkSheets.Count
3) Количество печатных страниц - ПРАВ Игорь Столяров - зависит от многого, в том числе, от выделенных рабочих листов EXCEL перед вызовом печати, словом от того, ЧТО ПОНИМАТЬ ПОД "ПЕЧАТАЕМЫЙ ДОКУМЕНТ".
А как организована твоя накладная - на одном рабочем листе или на двух, как происходит печать - может быть это запуск какого-то макроса - этого мы не знаем.
Хочешь - объясни подробно, либо дай образец своего EXCEL-документа. Тогда на твой вопрос будет найден ответ.
Компьютер имеет то преимущество перед мозгом, что им пользуются...
vvmaster
Новичок
Сообщения: 6
Зарегистрирован: 04 Август 2008, 17:58

Re: Число страниц EXEL документа через OLE

Сообщение vvmaster »

В документе во вкладке вид включена разметка страницы (office 2007), размер страницы задан A4 - на экране вижу листы так, как они будут напечатаны.
В левом нижнем углу стока: "Страница: 1 из 5". Так вот как получить в этот момент эту цифру 5?
Накладная на одном рабочем листе. Печать не предусматривается так-как накладная отправляется электронкой.
Я бы прислал накладную, но не понял как ее прикрепить к сообщению.
Многие знания порождают многие печали.
Аватара пользователя
WadimZapara
Активист
Сообщения: 181
Зарегистрирован: 11 Июнь 2008, 12:11
Откуда: Тамбов

Re: Число страниц EXEL документа через OLE

Сообщение WadimZapara »

1) worksheets(номер_или_имя_листа).hPageBreaks.count - число горизонтальных разделителей на страницы
2) worksheets(номер_или_имя_листа).vPageBreaks.count - то же - вертикальных
3) вместо worksheets(номер_или_имя_листа) можно использовать ActiveSheet
Получаешь свойство 1 и свойство 2, увеличиваешь каждое на единицу, перемножаешь и становишься счастливым
Компьютер имеет то преимущество перед мозгом, что им пользуются...
vvmaster
Новичок
Сообщения: 6
Зарегистрирован: 04 Август 2008, 17:58

Re: Число страниц EXEL документа через OLE

Сообщение vvmaster »

Спасибо!!!!
Многие знания порождают многие печали.
Ответить