Страницы: 1
RSS
автоматический ввод в ячейки столбца номера страницы
 
Уважаемые форумчане! В моей работе необходимо,чтобы подсчитывалась сумма ячеек столбцов по каждой странице при печати таблицы. В Excel есть средство Данные-> Итоги,но для этого нужно,чтобы программа определяла,где кончается страница.Можно наверно для этого ввести дополнительный столбец и в режиме Разметка страницы вручную вводить в его ячейки номер страницы. А можно ли эту функцию как-то автоматизировать? Спасибо.
 
http://www.excelworld.ru/forum/2-749-1
Я сам - дурнее всякого примера! ...
 
Уважаемый KukLP! Спасибо за ответ! Но посколько я вообще ничего в макросах не понимаю,буду некоторое время разбираться во всех этих приложенных файлах и как собственно ваш макрос применяется к другому,т.е. моему файлу.Кстати,в последнем файле Inv.xls в списке макросов стоят 4 макроса,их все нужно "задействовать"? Спасибо.
 
Нет. Только те, что в Module1. Первый отвечает за разбивку по страницам с суммами, второй выводит на печать страницы, формируя разные колонтитулы. Если это не нужно, можно его не задействовать.
Я сам - дурнее всякого примера! ...
 
Скопировала макрос Print_Title в свой файл (прилагаю) командами Сервис-Макрос-Редактор Visual Basic-Insert-Module.Дальше пытаюсь его выполнить Сервис-Макрос-Макросы...-(выделено Print_Title)-Выполнить,но ничего не происходит.Кнопочки Подготовки к печати нет,и выходит какая-то ошибка. Дальше сама не разберусь.Помогите,пожалуйста.Спасибо.
 
Итоги надеюсь, самостоятельно поправите.
Я сам - дурнее всякого примера! ...
 
Уважаемый KukLP! Спасибо! Правда,остались еще моменты :) Можно ли в коде указать номера столбцов,где я хочу поставить слово Итог(или другое слово,например Всего по странице),номера столбцов,где нужно высчитывать сумму (нужно не во всех),ну и еще как убрать пустую строчку перед итоговой строкой,если это понадобится? Вообщем хотелось бы такой универсальный макрос для любых таблиц. Есть еще один комический момент.В сумму включается цифра строки,показывающей номер столбца ТАБЛИЦЫ (под шапкой),обычно такая строка бывает часто в таблицах и ее печатают как сквозную. Ну я конечно таращилась-таращилась на код,но понять его не в моей власти :(
 
В строке:  
       Cells(d - 1, 4).Value = "Всего по странице:"  
4 - это номер столбца.
Я сам - дурнее всякого примера! ...
 
Так,где в коде поставить другое слово,разобралась.Спасибо.Теперь,как же сделать,чтобы считалась сумма,например,только 14(столбец N) и 15(столбец O) столбцов?И самое неприятное: правильно считает сумму только на последнем листе,на остальных-неправильно.Не может это быть связано со строкой с номерами столбцов таблицы? Я немного изменила файл(прилагаю),увеличила кол-во страниц и для наглядности ввела числа попроще.
 
Поменял алгоритм. Поскольку высота строк везде разная, неправильно делил по страницам.
Я сам - дурнее всякого примера! ...
 
Здравствуйте,KukLP! УРА!!!!!Все работает!!!!(Я тут отвлекалась на сон,у нас на Д.Востока ночь была,ну и некоторые дела по дому).Огромное-преогромное спасибо!!!!Этого в принципе абсолютно достаточно,но три вопросика еще есть :) Если это не сложно,нельзя ли на последней странице после строки "Всего по странице" забабахать еще строку "Всего по таблице",обычно это тоже требуется в работе,в принципе можно и вручную посчитать,но я смотрю,вы классный программист!Но если нужно долго кумекать,то не надо.Еще.Если убрать все сквозные строки,опять вылетает ошибка.Опять-таки,можно сделать сквозной хотя бы одну строку с цифрами номеров столбцов,в этом случае все работает,так что если нужно тоже долго думать,то не надо.Ну и еще два вопросика для себя.Как же все-таки нужно записать в коде строки For j = 14 To 15 ' Step 2 чтобы считались суммы НУЖНЫХ мне столбцов? И какие строки в коде вы убрали,чтобы не было пустых строк перед итоговыми строками? Вдруг мне понадобится :) Еще раз огромное-преогромное спасибо за вашу доброту и терпение!
 
Здравствуйте, Екатерина. Чтоб печатались итоги по всему документу, достаточно один раз напечатать их через строчку от данных, как в файле. В программе ничего менять не надо.  
Сквозные строки убрал, хотя принято на каждой странице печатать заголовки столбцов, чтоб было понятно, что к чему относится. Ну, дело Ваше. Теперь Вы можете включать их, или не включать.  
По поводу "суммы НУЖНЫХ мне столбцов", просто замените цикл:  
       For j = 14 To 15 ' Step 2  
           Cells(d - 1, j).Formula = "=SUM(" & Range(Cells(n, j), Cells(d - 2, j)).Address(0, 0) & ")"  
       Next  
строками:  
Cells(d - 1, j).Formula = "=SUM(" & Range(Cells(n, j), Cells(d - 2, j)).Address(0, 0) & ")"  
где вместо j подставляйте порядковые номера столбцов.
Я сам - дурнее всякого примера! ...
 
Еще немного изменил алгоритм. Когда оставалась одна строка на последней странице деление двух последних было неправильным. Так редко совпадает, но...
Я сам - дурнее всякого примера! ...
 
Уважаемый KukLP! Ну короче я "поэкспериментировала".Я захотела подсчитывать суммы 11,14 и 15 столбцов.Посмотрите,что я нарисовала в коде,только не падайте от смеха,макрос не работает,исправьте,пожалуйста,чтобы уже до меня дошло наконец и простите мне мою дремучую непроходимость.Спасибо.  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
 
А Вы сами посмотрите, какие переменные у меня в последнем цикле, а какие у Вас.  
Не надо было копировать строку из верхнего цикла в нижний. Нижнюю надо тиражировать.
Я сам - дурнее всякого примера! ...
 
Ну,кажется разобралась.Прилагаю файл для тех,кто может быть прочитает эту тему.Уважаемый KukLP! Остался еще один,главный вопрос! А как же применить ваш код к любому другому файлу,например,прилагаю один.Там я выставила ячейку 2 для слов Всего по странице,и ячейки 4 и 5 для сумм. Что же еще нужно поменять в коде,чтобы он работал? С уважением Катя.
 
другой файл
 
>>А как же применить ваш код к любому другому файлу  
Учить ВБА. Тогда Вы легко сможете управлять своими макросами. Универсального макроса на все случаи жизни не существует. Иначе бы таких форумов не было:-)
Я сам - дурнее всякого примера! ...
 
Здравствуйте,KukLP! Конечно,для меня это удивительно,что,например,установив некоторые "переменные",например,отступ шапки таблицы по вертикали,отступ таблицы сбоку,кол-во строк в шапке,номер ячеек для подсчета сумм и слов Итого и какие-то может быть другие,нельзя написать универсального макроса,менять в нем эти значения и тем самым приспосабливать его для любых файлов.Я,конечно,не программист.Еще раз благодарю вас за помощь с моим файлом с товарной накладной.Всего вам доброго!
 
Что тут удивительного? Документ может состоять из нескольких поддокументов, кроме шапки может быть подвал на пару десятков подписей согласующих, кому-то надо делать пропуски между таблицей и итогами, таблица может быть где угодно на листе. А уж как чудят пользователи, всего не перечислить. Тот макрос, что Вы получили, как раз можно "приспосабливать его для любых файлов", или почти любых. Для этого и нужно знать ВБА.    
Вариант - в Access есть отличный генератор отчетов, так же существует спец. ПО типа Crystal Report, но чтоб работать с ними, тоже надо учиться. И знать надо тем больше, чем больше хотите получить от них. Комп не умеет мыслить абстрактно, поэтому пользователь должен уметь формулировать свои хотелки на понятном ему, компу, языке. Удачи, Екатерина!
Я сам - дурнее всякого примера! ...
 
Уважаемый KukLP! Если честно,я без понятия как это можно сделать! =(  
Неужели никто с этим не сталкивался?
Страницы: 1
Читают тему
Наверх