Добрый день. Подскажите формулы при решении задачи на рис. 2.2 в лекции №2. Закон Ома, какие должны использоваться формулы для I и R |
Начала программирования в Excel
Предисловие
Эта книга посвящена Excel - основам программирования в Excel, связи Excel с базами данных и другими источниками данных, анализу офисной деятельности, выполняемыми средствами Excel, созданию интерактивных документов в Excel, приданию Web-страницам функциональности Excel. Отдавая должное этому замечательному приложению, я и решил назвать книгу "Мир объектов Excel 2000".
Почему не просто "Мир Excel 2000"? Видимо, потому что я предпочитаю смотреть на все, что происходит в Excel, с объектной точки зрения, рассматривать все происходящее как действия над объектами. Да и описанию самих объектов в этой книге уделяется достаточно много внимания. При этом в круг рассмотрения входят не только объекты самого Excel. Мир объектов Excel более широк. Так или иначе, в рассмотрении появляются общие объекты Office 2000, объекты других приложений, в книге, например, много внимания уделяется связи Excel и Access. Помимо объектов Excel в книге подробно рассматриваются еще две группы объектов - ADO и OWC. Объекты ADO, позволяющие организовать доступ к базам данных, несомненно, входят в мир Excel, поскольку, чаще всего, Excel является тем приложением, где обрабатываются данные, хранимые в различных источниках. Компоненты OWC, обладающие функциональностью Excel , - их объектная модель - это тоже часть мира объектов Excel. Без этих объектов не обойтись, если Ваше решение переносится в интранет или интернет, и Вы захотите создать Web-узел, страницы которого обладают функциональностью Excel документов.
Что же можно найти в этой книге, и кому она предназначена?
Эта книга предназначена тем, кто создает решения на базе Excel. Конечно, в первую очередь речь идет о тех, кто уже использует программирование на VBA и VBScript при создании своих решений. Но я думаю, что и те, кто давно работает в Excel, но еще не использовал программные способы настройки своих решений, могут начать с этой книги, хотя, предупреждаю, требуется определенная программистская подготовка.
Первые две лекции посвящены началам программирования в Excel. Они, надеюсь, доступны опытным пользователям и начинающим программистам. Думаю, что их с интересом прочтут и те, кто занимается обучением программированию в любой среде программирования. Я высказываю и пытаюсь обосновать здесь "крамольную" мысль о том, что Excel является прекрасной средой начального обучения программированию в школе и в вузах. Надеюсь, что и опытные программисты найдут здесь кое-что полезное для себя, особенно, во второй главе, адресованной математикам.
Глава 3 дает описание объектной модели Excel. Подробно рассмотрены все основные действующие лица этой модели - объекты Application, WorkBook, WorkSheet, Chart, Range и другие. Понятно, что при раскрытии этой темы без технических деталей не обойтись, поэтому чтение главы довольно утомительно, но как справочный материал, она, надеюсь, будет весьма полезной.
Базы данных и другие источники данных - это одна из ведущих тем этой книги. Глава 4 "Excel и базы данных" начинает эту тему. В этой же главе дается знакомство с приложением Access, на примере показано, как строится база данных в Access, изучаются связи Excel и Access.
Пятая и шестая главы книги посвящены объектам ADO. Уже то, что этим объектам посвящены две главы, говорит о степени подробности рассмотрения этой темы. Объекты ADO задают интерфейс между самыми разнообразными источниками данных и клиентским приложением, где эти данные обрабатываются. Таким приложением совсем не обязательно должен быть Excel, сфера применения объектов ADO значительно шире. Но Excel это одна из наиболее подходящих кандидатур на роль такого клиентского приложения. Чтение этих глав требует определенной подготовки и ориентированно на более продвинутых программистов.
Седьмая глава книги посвящена разработке интерактивных документов. Она носит в определенном смысле центральный характер. В ней рассматривается весь процесс создания интерактивного документа Excel. Этот документ можно считать примером создаваемого в Excel типичного решения, в котором программный проект играет определяющую роль. Предлагаемое решение использует базу данных Access и объекты ADO для организации связи с базой данных. Здесь же обсуждается и ряд других вопросов, важных в практической работе, начиная от организации интерфейса пользователя до получения печатной формы документа.
Глава 8 посвящена вопросам, возникающим при анализе офисной деятельности. В ней делается попытка сочетать содержательное рассмотрение, например, рассмотрение того, как проводить анализ типа "Что, если …" с рассмотрением средств Excel, используемых в таком анализе. Здесь рассматриваются сводные таблицы и сводные диаграммы, сценарии, методы прогнозирования и многое другое.
В девятой главе подробно обсуждается создание проекта под названием "MasterF". С содержательной точки зрения рассматривается задача оптимального выбора инвестиционных вложений. В проектном решении используется мощный встроенный инструмент Excel - решатель Solver, позволяющий решать сложные оптимизационные задачи. Данный проект демонстрирует построение надстройки над встроенным инструментарием Excel. Полагаю, что он может иметь не только учебную, но и практическую ценность для тех, кто решает подобные задачи.
В главе 10 в рассмотрение вводятся новые объекты, тесно связанные с Excel. В этой главе рассматриваются Office Web Components - компоненты OWC. По моему мнению, эти компоненты являются лучшим продуктом, созданным Microsoft в области компонентного программирования. Они дают возможность добавить функциональность Excel в свои решения без использования самого Excel и других приложений Office 2000. Основное предназначение этих компонент - обеспечение корпоративной работы с документами в интрасетях, что позволяет создавать интерактивные страницы Web-узлов, обладающие функциональностью Excel. При рассмотрении этих компонент большое внимание уделяется программной работе с этими компонентами, возможности программной настройки Web-документов, использующих эти компоненты.
Глава 11 посвящена введению в Web-программирование. Я подробно рассматриваю процесс создания интерактивного Web-документа. Ключевым словом здесь является "интерактивность", поскольку, по большому счету, вся эта книга о том, как придать нужную интерактивность создаваемым документам. Глава носит вполне самостоятельный характер, но, по сути, является естественным продолжением двух тем, рассматриваемых в главах 7 и 10, поскольку с одной стороны речь идет о создании интерактивного документа, с другой - документа Web, страницы которого могут обладать функциональностью Excel. Замечу, что при рассмотрении вопросов создания интерактивного Web-документа, я ограничиваюсь рассмотрением программных продуктов от Microsoft. Так что роль Web-сервера, выполняющего сценарии на серверной стороне, играет IIS - Internet Information Server, соответствующие страницы узла являются ASP-страницами, а обозреватель, выполняющий код на клиентской стороне, это Internet Explorer.
Главу 12 я решил посвятить описанию проектов, выполненных студентами, которым я читал курс "Офисное программирование". Надеюсь, что часть проектов, о которых идет речь в этой главе, будут на сервере, их программный код открыт и доступен для изучения. Работы студентов расширяют множество примеров, рассмотренных в книге, и являются хорошей иллюстрацией возможностей офисного программирования. Все игры ориентированы, в первую очередь, на школьников, но не только на них. Большинство игр относится к классу "развивающих" игр, направленных на развитие логического мышления. Среди игр есть вариации известных игр - Lines, Tetris, Digger, игры-головоломки, известная карточная игра "Подкидной дурак" и другие игры.
Завершая предисловие, хочу сказать, что предлагаемый курс тесно связан с книгами серии "Офисное программирование", вышедшими в издательстве "Русская редакция". Есть явные и неявные ссылки в тексте многих глав:
- "VBA в Office 2000. Офисное программирование,
- "Средства разработки VBA-программиста". Офисное программирование,
- Мир объектов Excel 2000. Средства разработки VBA-программиста.
Хорошо, если читатели знакомы с этими книгами, или прошли курсы по первым двум книгам, но это не обязательное требование. Пройти данный курс можно вполне самостоятельно. Скажу даже, что я старался, по возможности, сделать каждую главу доступной для независимого чтения.
Просьба к читателям. Поскольку курс построен на основе ранее вышедшей книги и практически не подвергался переделке, то возможны "висячие ссылки", имеющие смысл только для книги. Часть материала уже устарела. Постарайтесь быть снисходительными к этим огрехам. Я искренне верю, что основное содержание не потеряло своей ценности и может быть полезным всем, кто так или иначе связан с офисным программированием.
Связаться с автором можно по адресу: Vladimir.Billig@tversu.ru