Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Подсчёт общего кол-ва листов и номера листа, в который входит определённый диапазон
|
|||
|---|---|---|---|
|
#18+
Доброго дня, уважаемые форумчане. Я новичок в программировании на VBA, посему не могу сам справиться с этим таском. Очень надеюсь на вашу помощь и/или советы. Мне необходимо подсчитать общее количество листов и номер текущего листа. Формат документа следующий: "шапка", область данных и инфо-блок, подитоживающий данные из шапки и области данных. Формирование листов строится по схеме в зависимости от кол-ва позиций. Иллюстрируют это следующие интервалы зависимости количества листов от количества позиций: {1..5} - 1 page {6..46} - 2 pages {47..88} - 3 pages ... Если ставить задачу в нотации, где "[]" - обозначают достаточное кол-во позиций, чтоб уместить область данных и инфо-блок на одном листе а "()" - максимальное кол-во позиций на листе после "шапки", но инфо-блок при этом смещается на следующий лист 1-й лист: [5] (20) [5] - лист вмещает инфо-блок - получаем шапку, данные и инфо-блок на одном листе (20) - макс.кол-во позиций, размещаемое на 1-м листе, при этом инфо-блок не вмещается, переходя на след.лист 2-й и последующие листы: [26] (41) [26] - на листе вмещается инфо блок (42) - макс.кол-во позиций, размещаемое на 2-м и последующих листах, при этом инфо-блок не вмещается, переходя на следующий лист ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2010, 11:52 |
|
||
|
Подсчёт общего кол-ва листов и номера листа, в который входит определённый диапазон
|
|||
|---|---|---|---|
|
#18+
То есть, если на лист выводятся всего 5 позиций, то инфо-блок полностью помещаются на одном листе с шапкой и областью данных, т.е. получается один неразрывный лист. Если 6 позиций, то вся информация уже не помещается, т.к. инфо-блок смещается на следующую страницу - получается 2 листа. На первом листе размещается, максимум, 20 позиций,- вернее шапка и 20 позиций, остальная информация (инфо-блок) переходит на следующие листы: Если 46 позиций, то получаем 1-й лист - шапка, 20 позиций, 2-й лист - с 21 позиции по 46-ю, инфо-блок помещается на 2-м листе. Если более 46-ти позиций, то уже будет 3 листа: т.е. с 21-й по 62-ю позиции помещаются на 2-м листе (это если без инфо-блока), 63-я и последующие - на другом листе, со смещённым инфо-блоком. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2010, 11:54 |
|
||
|
Подсчёт общего кол-ва листов и номера листа, в который входит определённый диапазон
|
|||
|---|---|---|---|
|
#18+
Ворд или эксель? Господа, делайте ваши ставки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2010, 11:55 |
|
||
|
Подсчёт общего кол-ва листов и номера листа, в который входит определённый диапазон
|
|||
|---|---|---|---|
|
#18+
Antonariy, С возвращением. Вы с Игорем одновременно в отпуск ходите? Думаю, что ворд, задача напоминает создание накладной ТОРГ-12, разбитой на несколько листов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2010, 12:03 |
|
||
|
Подсчёт общего кол-ва листов и номера листа, в который входит определённый диапазон
|
|||
|---|---|---|---|
|
#18+
Kerguru, Если я правильно понял задачу, я бы решал таким методом: Берется незаполненный шаблон - это один лист. Дальше в бесконечном цикле начинает вставляться по одной строке, при каждой итерации проверяется количество страниц документа. Как только количество страниц сменилось с 1 на 2 - значит нужное количество строк для первого листа (i-1). Продолжаем цикл - как только количество страниц сменится с 2 на 3 - значит это нужное количество для второго и последующих листов. Ну и выходим из цикла, когда получены все нужные данные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2010, 12:16 |
|
||
|
Подсчёт общего кол-ва листов и номера листа, в который входит определённый диапазон
|
|||
|---|---|---|---|
|
#18+
Виноват. Как только количество страниц сменится с 2 на 3 - это количество позиций для ПОСЛЕДНЕЙ страницы. А когда сменится с 3 на 4 - это количество для ВНУТРЕННИХ страниц. Далее можно выходить из цикла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2010, 12:28 |
|
||
|
Подсчёт общего кол-ва листов и номера листа, в который входит определённый диапазон
|
|||
|---|---|---|---|
|
#18+
> Автор: Shocker.Pro > Antonariy, > > С возвращением. Вы с Игорем одновременно в отпуск ходите? Спасибо, а вдруг мы вообще не человека (с) анекдот > Думаю, что ворд, задача напоминает создание накладной ТОРГ-12, разбитой на несколько листов. Я с такой системой не сталкивался, поэтому предполагаю Ексель, хотя в твоих рассуждениях есть смысл. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2010, 17:10 |
|
||
|
Подсчёт общего кол-ва листов и номера листа, в который входит определённый диапазон
|
|||
|---|---|---|---|
|
#18+
word скорее всего ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2010, 17:14 |
|
||
|
Подсчёт общего кол-ва листов и номера листа, в который входит определённый диапазон
|
|||
|---|---|---|---|
|
#18+
offИгорь ГорбоносСпасибо, а вдруг мы вообще не человека (с) анекдот Правильный вариант: Карл Маркс и Фридрих Энгельс это не муж и жена - а четыре разных человека ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2010, 17:16 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=36623793&tid=2159808]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 361ms |

| 0 / 0 |
