Как и в любом строительном процессе, существует несколько путей построения программных приложений. Подход, изложенный ниже, один из тех подходов к разработке приложений, который я с успехом использую на протяжении ряда лет. Первый шаг такого подхода - как можно лучше представить себе будущее приложение. Для этого необходимо ответить на следующие вопросы.
Кто будет применять приложение?
Откуда будут поступать данные, используемые в приложении?
Где и как будут храниться данные, полученные с помощью приложения?
Как данные будут обрабатываться приложением?
В каком виде будут представлены выходные данные?
Рассмотрим возможные ответы на эти вопросы.
Кто будет использовать приложение
Если вы будете точно знать будущего пользователя вашего приложения, то наверняка сможете определить, как оно должно выглядеть (внешний вид интерфейса) и каким быть "на ощупь" (степень сложности работы с интерфейсом). Если вы разрабатываете приложение для опытных пользователей Excel, то для ввода данных можно, например, использовать все возможности рабочего листа. Если же ваш будущий пользователь едва знаком с Excel, то для ввода данных лучше организовать специальную форму ввода.
Откуда будут поступать данные для приложения
Возможны различные варианты ответа на этот вопрос. Данные уже находятся в некой рабочей книге; при каждой загрузке приложение должно работать с новыми данными; данные импортируются из внешней базы данных. Местоположение данных является одним из определяющих факторов при разработке приложения.
Где и как будут храниться данные, полученные с помощью приложения
Могут быть следующие варианты ответа. Например, данные будут храниться в той же рабочей книге, где находится само приложение, либо в другой рабочей книге. А может, данные необходимо экспортировать во внешний файл, например Microsoft Access или Microsoft SQL Server? Если данные даже временно будут находиться в рабочей книге, то вы должны заранее создать эту рабочую книгу с соответствующей структурой рабочих листов.
Как данные будут обрабатываться приложением
По-другому этот вопрос можно сформулировать так: как ваше приложение будет манипулировать данными и как будет построен процесс анализа данных. Например, надо ли строить диаграммы на основе данных; какие вычисления необходимо выполнить над данными; нужно ли использовать сводные таблицы или сортировать данные. Ответив на подобные вопросы, вы сможете определиться с типом используемых рабочих листов, "зашив" в них необходимые формулы, и наметить последовательность действий, выполняемых над данными. Это, в свою очередь, позволит вам составить список макросов и процедур, которые нужно создать.