Примеры заданий для программирования на VBA

Все программы делаются в среде Word!

Человеку, только приступающему к использованию макросов, очень трудно придумать, что бы такого сделать. Причина кроется в том, что здесь не бывает золотой середины: рядовой пользователь никогда не пытается изучить язык програм­мирования, а обстоятельства просто заставляют учиться... Программист же наивно считает подобную работу «несерьезной», так как его представление о текстовом редакторе исчисляется в долях процента от истинного. Чтобы думалось легче, ниже приведено «несколько» вариантов применения. Они отличаются по сложности на порядки!

    (Список пополняется в том числе и стара(страда)ниями учащихся. Значительную часть задач в принципе нельзя сделать вручную.)

    Доступ к этим материалам предоставляется только зарегистри­рован­ным пользователям!


Для терпеливо дочитавших до конца хочется изложить мысль по рождению идеи написания макросов.

По сути, очевидно, что постоянное программирование рутинных процессов относится к особому мышлению и неизбежно приводит к созданию программ «на перспективу». То есть, для выполнения сегодняшней часовой работы будет затрачено три часа на программирование в надежде на повторное использование. Лично я считаю такую постановку вопроса абсурдной, так как должна быть не надежда, а уверенность в том, что такая программа нужна. Но далеко не всегда можно спрогнозировать будущее, да и сама идея алгоритма может оказаться полезной, в том числе и для других ситуаций.

Один из вариантов выхода из описанного противоречия — отвлечься на минуту для того, чтобы записать идею. Для этих целей прекрасно подойдет простой текстовый файл, расположенный в легкодоступном, но надежном месте.

Требования к макросу

  1. Сдается работа в виде файла *.docm со всеми формами и программами, имя начинается с фамилии латиницей. Отсюда вытекает вывод о необходимости записи всего проекта сразу в этот файл. Присылка файла без макросов означает вычет 10% баллов сразу, без возможности повысить оценку. К повторно сдаваемым файлам (при возврате на исправление) прибавляется номер версии в конец имени (не будет, вычтется по баллу на номер).
  2. Выполняемая им работа должна быть разумной, то есть приносить актуальную пользу и не быть надуманной. Алгоритм должен быть однозначным либо реализовывать большинство вариантов (лучше все).
  3. Обязано быть пояснение в письме того, что макрос делает и зачем это надо. А то приходит непонятное «нечто», и разобраться с нем (в разумные сроки) невозможно. Комментарии внутри программы также приветствуются. Желательно (не обязательно) вставлять их в конец строки после команды, чтобы не занимать лишнюю строку.

    Доступ к этим материалам предоставляется только зарегистри­рован­ным пользователям!


  4. Не забывайте, что вы — не глупее меня. Ваши совокупные идеи могут во много раз превысить то, что в состоянии придумать я, несмотря на мой опыт. Реализация данного проекта должна (обязана) быть иллюст­рацией системы синтеза знаний.
  5. Тотальная ошибка связана с тем, что очень многие макросы могут обрабатывать как весь документ, так и выделенный фрагмент. Причем с разной степенью вероятности, но и это можно предусмотреть. Переписывание этой ошибки может быть бесконечно сложным делом!

Copyright © 1993–2021 Мацкявичюс Д.А. Все права защищены.
Никакая часть сайта не может быть воспроизведена никаким способом без письменного разрешения правообладателя и явной ссылки на данный ресурс.