Visual Basic Script

       

Visual Basic для детей. Уроки 1-5

В далеком 1970 году Билл и Пол были друзьями, и они учились в школе на берегу озера в городе Сиэттле. Билл и Пол любили возиться с компьютерами, они написали много компьютерных игр, и самые известные из них – это Tic-Tac-Toe (крестики – нолики) и moon landing (лунная поверхность). Эти игры были написаны на компьютерном языке, называемом BASIC [по начальным буквам: Начальная (Beginner’s) Универсальная (All-Purpose) Символьная (Symbolic) Система Команд (Instruction Code)]. Когда в середине 1970-х был разработан первый персональный компьютер, Билл и Пол уже перешли из школы в колледж. К тому времени они имели достаточно знаний, чтобы успешно применять язык BASIC в работе с новыми компьютерами. И дело пошло. Они стали продавать их версию языка BASIC всем желающим (по цене $350 за программу, записанную на магнитофонной кассете). На вырученные таким образом деньги они создали компанию. Вы, возможно, слышали её название – Microsoft! Соответственно, Билл – это Билл Гейтс, который и сейчас управляет многомиллиардной империей Microsoft. Пол – это Пол Аллен, который сейчас хотя и не работает в Microsoft, но является владельцем акций крупных компьютерных фирм, содержит профессиональные спортивные команды, вкладывает капитал в недвижимость.

Продолжение

Visual Basic - магия простоты

Начнем с самой формы. Сначала, удерживая мышкой край формы, доводим ее до желаемого размера путем растяжения или сжатия объекта. Затем находим в окне свойств формы (не забыли, где оно находится?) строку BorderStyle - это обрамление окна формы. Лучше поставить туда значение FixedSingle - в этом случае будущий пользователь не сможет изменять размер окна, но если вас это не устраивает, можете поэкспериментировать с другими вариантами. Далее в поле Caption указывается название шапки окна.

Продолжение

Создание приложений ОС Windows средствами Visual Basic

Операционная система – важнейшая часть ПК. Существуют операционные системы с различными характеристиками. Единой операционной системы, которая, будучи достаточно дружественной к пользователю, полно удовлетворяла бы все его требования, не существует.
В этом разделе  рассматриваются вопросы, связанные с характеристиками различных операционных систем.


Операционная система – комплекс программ, входящих в состав программного обеспечения компьютера, обеспечивающих управление работой аппаратных средств компьютера, обменом данными между различными аппаратными узлами ПК, а также организующих диалог компьютера с пользователем.
Операционная система управляет вычислительным процессом и информационным обменом между оперативной памятью, внешними устройствами и центральным процессором. При параллельной работе процессора, памяти и внешних устройств операционная система обеспечивает разделение ресурсов, чем предотвращает опасность возникновения конфликтов между компонентами вычислительной системы.

Продолжение

Visual Basic Script

Автоматизация - это одна из возможностей, предоставляемых технологией Microsoft COM (Component Object Model). Не вдаваясь в подробности реализации этой технологии, заметим, что она используется приложениями (называемыми COM-серверами) для предоставления доступа к их объектам, а также к свойствам и методам этих объектов другим приложениям (называемым COM-клиентами), каковыми могут быть и средства разработки. Например, текстовый процессор, будучи COM-сервером, может предоставлять другим приложениям доступ к документу, абзацу, закладке с помощью соответствующих объектов. Для именования (и опознания) COM-серверов обычно используются специальные строковые обозначения - программные идентификаторы (Programmatic Identifier, ProgID). Они нужны для того, чтобы операционная система могла с помощью этих идентификаторов определить, в каком именно каталоге (или на каком компьютере локальной сети, если используется тот или иной способ удаленного доступа к серверу) расположен исполняемый файл сервера автоматизации, и запустить его на выполнение. О том, какие именно программные идентификаторы применяются для того или иного приложения Microsoft Office, будет сказано в разделах, посвященных этим приложениям.

Файлы Windows Scripting Host
Microsoft Word и Microsoft Excel
Как получить информацию об операционной системе при помощи WMI
Windows Script Host (WSH). Чтение и редактирование файлов
Windows Script Host (WSH). Файловая система

Windows Script Host (WSH) - файлы и папки
Windows Script Host (WSH) - MS Office
Windows Script Host (WSH) - обработка исключений
Windows Script Host (WSH) - теория, реестр
Windows Script Host (WSH) - управление программами

Windows Script Host (WSH) - запуск программ

Visual Basic + HTML = VBScript

Данная статья предназначена тем, кто хотел бы получить представление о программировании на Visual Basic Script, подмножестве языка Visual Basic. VBScript позволяет решать задачи, связанные с Internet, а именно создавать сценарии (или скрипты) управления объектами (кнопками, списками, ниспадающими меню и т. д.) на Web-страничках. Для понимания этого материала нужно иметь представление о структуре HTML-документа, а также основах программирования на Visual Basic. Описанные в статье сценарии могут быть использованы в браузере Microsoft Internet Explorer 3.0. Другие браузеры попросту не понимают этого языка. В настоящее время существуют всего два языка создания сценариев по управлению объектами - Microsoft VBScript и Sun JavaScript. Оба поддерживаются IE 3.0. Браузер же компании Netscape воспринимает только JavaScript.

Продолжение

Основы создания сценариев, знакомство с VBScript

Чтобы составить представление о области применения VBScript, рассмотрим часто встречающуюся в  службе WWW сети Internet  операцию заполнения формы и отсылки данных на сервер. Если пользователь заполнит хотя бы одно поле неверно и отошлет данные, программное обеспечение сервера распознает ошибку и попросит повторить ввод. С другой строны, можно выполнить проверку данных перед их отправкой. Если поля заполнены некорректно, броузер сразу же сообщит об этом, а данные отсылаться на сервер не будут. Этот пример наглядно иллюстрирует другое достоинство выполнения сценариев на стороне клиента – пользователь, в случае неверного ввода данных, сразу будет информирован об этом, а не будет ожидать ответа от сервера как в случае обработки запроса программным обеспечением сервера.

Продолжение

Интегрированная среда VB 6.0 обработки баз данных

После создания Базы Данных очередной становится задача организации её обработки с целью получения нужной информации. Имеется несколько вариантов работы:
доступ к Базам Данных через элемент управления Data;
доступ к Базам Данных с использованием языка  SQL (Structured Query Language - Структурированный Язык Запросов);
доступ к Базам Данных с использованием других средств.
Рассмотрим доступ, основывающийся на операциях с элементом управления Data, мощным инструментом для выполнения разнообразнейших операций с Базами Данных.

Продолжение

Visual C для начинающих

В связи с тем, что сегодня уровень сложности программного обеспечения очень высок, разработка приложений Windows с использованием только какого-либо языка программирования (например, языка C) значительно затрудняется. Программист должен затратить массу времени на решение стандартных задач по созданию многооконного интерфейса. Реализация технологии связывания и встраивания объектов - OLE - потребует от программиста еще более сложной работы.
Чтобы облегчить работу программиста практически все современные компиляторы с языка C++ содержат специальные библиотеки классов. Такие библиотеки включают в себя практически весь программный интерфейс Windows и позволяют пользоваться при программировании средствами более высокого уровня, чем обычные вызовы функций. За счет этого значительно упрощается разработка приложений, имеющих сложный интерфейс пользователя, облегчается поддержка технологии OLE и взаимодействие с базами данных.

Программная среда Windows
Современные интегрированные средства разработки приложений Windows позволяют автоматизировать процесс создания приложения. Для этого используются генераторы приложений. Программист отвечает на вопросы генератора приложений и определяет свойства приложения - поддерживает ли оно многооконный режим, технологию OLE, трехмерные органы управления, справочную систему.

Использование класса CTabCtrl
Tab control - это мощное средство для решению многих проблем в интерфейсе приложений. Оно позволят существенно увеличить скорость работы вашего приложения, разбить на "части" диалог в удобной для пользователя форме. В MFC есть встроенный класс по работе с Tab control - класс CTabCtrl.

Самоучитель VBA

В качестве первоначального знакомства с VBA попытаемся решить следующую задачу. Допустим, вы решили вести учет своих расходов, и с этой целью в конце каждого месяца намерены составлять таблицу (рис. В.1) и строить диаграмму для более наглядного отображения доли каждой статьи расходов вашего бюджета. Составлять ежемесячно одну и ту же таблицу с одновременным построением диаграммы довольно непроизводительная трата времени. Более разумно один раз научить компьютер создавать таблицу, а потом по мере необходимости лишь отдавать команду подготовки таблицы, чтобы осталось только внести в нее данные.

Зачем нужен VBA
Для обучения компьютера отлично подходит MacroRecorder - транслятор, создающий программу (макрос) на языке VBA, которая является результатом перевода на язык VBA действий пользователя с момента запуска MacroRecorder до окончания записи макроса.

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

Основные объекты VBA
Объект Application (приложение) является главным в иерархии объектов Excel и представляет само приложение Excel. Он имеет более 120 свойств и 40 методов. Эти свойства и методы предназначены для установки общих параметров приложения Excel. Кроме того, объект Application позволяет вызывать более 400 встроенных функций рабочего листа

Методы объекта range, использующие команды EXCEL
В данном разделе рассматриваются методы, использующие встроенные в Excel команды. Эти методы позволяют эффективно работать с диапазоном: заполнять его элементами по образцу, сортировать, фильтровать и консолидировать данные, строить итоговую таблицу и создавать сценарии, решать нелинейное уравнение с одной неизвестной.

Сценарии и определение структуры данных
Объект scenario (сценарий) позволяет хранить несколько значений в одной ячейке. Каждое уникальное значение в ячейке или каждая уникальная группа значений для группы ячеек называется сценарием. Семейство scenarios (сценарии) содержит все сценарии рабочего листа. Вручную сценарии создаются с помощью команды Сервис, Сценарии (Tools, Scenarios).

Диаграммы
Excel позволяет создавать высококачественные диаграммы. Существенную помощь при их построении оказывают встроенные форматы диаграмм, предоставляющие большой спектр графического представления наборов данных. Как вся диаграмма, так и ее отдельные элементы легко удаляются, изменяются и добавляются. Добавляя в диаграмму пояснительный текст, стрелки, заголовки, легенду, изменяя заливку, узоры, типы линий и обрамление, можно добиться того, чтобы диаграмма представляла данные в наиболее наглядном виде.

Сводные таблицы
Сводные таблицы являются одним из наиболее мощных средств Excel для анализа данных, помещенных в таблицы или списки. Сводные таблицы позволяют группировать данные и производить их анализ. Создавая сводные таблицы, пользователь оперирует именами полей, которые должны помещаться в ее строках и столбцах. Возможно также задание поля страницы, превращающего сводную таблицу в подшивку из нескольких страниц

Элементы управления и пользовательская форма
VBA обладает встроенным набором элементов управления. Используя этот набор и редактор форм не трудно создать любой пользовательский интерфейс, который будет удовлетворять всем требованиям, предъявляемым к интерфейсу в среде Windows. В данной главе дан обзор встроенных элементов управления VBA. Элементы управления являются объектами.

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

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

Семейства Shapes и ShapeRange
Объект shape — это любой графический объект, размешенный на рабочем листе или диаграмме. Семейство shapes представляет собой семейство всех графических объектов рабочего листа. Семейство ShapeRange содержится в семействе shapes и является конкретным набором графических объектов рабочего листа. В крайних случаях семейство ShapeRange может состоять только из одного объекта или совпадать с семейством shapes, которое его содержит.

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

Процедуры обработки ошибок и отладка программ
Предотвращение ошибок: программно анализировать вводимые или вычисляемые данные и в случае, если они могут приводить к ошибке, обеспечить, чтобы программа информировала пользователя о необходимости корректного задания данных. Обработка ошибок: в случае появления ошибки, перехватить ее, обработать и программно откликнуться на возникшую ошибку.

Работа с файлами
Приведем пример инструкции, открывающей для записи бинарный файл первый из рабочей папки, и затем инструкции, закрывающей этот бинарный файл. Open "Первый" For Binary Access Write As #1 Close #1

Пользовательские объекты
В VBA наряду с огромным числом встроенных объектов предусмотрена возможность создания пользовательских объектов. Использование таких объектов позволяет сократить текст программы и сделать его более понятным. Пользовательские объекты являются элементами пользовательских классов (или образно говоря, классы являются формами, из которых "пекутся" конкретные объекты)

Работа с внешними базами данных
В Microsoft Office входит отдельная программа, которая называется Microsoft Query, предоставляющая доступ к базам данных, созданных с помощью таких программных средств, как dBASE, Access, Paradox, Microsoft SQL Server и т. п. Эта программа позволяет отбирать информацию из базы данных, сортировать, редактировать и копировать ее на рабочий лист. Используя Microsoft Query, можно получить данные на основе заданных пользователем критериев.

Практические приемы программирования на VBA
На примере простейшей компьютерной игры будет полностью разработано первое приложение в этой книге. Это приложение должно моделировать игру в орел и решку. Игрок вносит в банк определенную сумму денег. Во время игры нельзя добавлять деньги в банк. Игра состоит из последовательности шагов, которая, вообще говоря, может быть бесконечной. На очередном шаге игрок загадывает либо орел, либо решку. Компьютер "бросает монету".

Расчет маргинальной процентной ставки
В уроке разрабатывается приложение, решающее задачу расчета маргинальной процентной ставки при постоянных выплатах в течение согласованного срока. Конструируя данное приложение, вы освоите: Как при помощи метода Goaiseek решаются уравнения. Программный ввод формулы в ячейку рабочего листа. Применение финансовой функции пз (PV). Проверку корректности ввода данных из диалогового окна. Назначение клавишам Enter и Esc функций кнопок диалогового окна

Работа со списком
В группе Операция следует установить один из переключателей: сумма, произведение или среднее, чтобы указать, какая операция будет выполняться над выбранными числами. Нажатие кнопки вычислить должно привести к выполнению операции и выводу результата в поле Результат.

Расчет амортизации
Под амортизацией подразумевается уменьшение стоимости имущества в процессе эксплуатации. Обычно оценивают величину этого уменьшения на единицу времени. Функция рабочего листа AMP (SLN) возвращает величину амортизации имущества за один период времени, используя метод равномерной амортизации.

Решение уравнения, зависящего от параметра. построение диаграммы
В этом разделе решается уравнение х3 - х - b = 0 при различных величинах параметра Ь, изменяющихся от начального до конечного значения с указанным шагом. При каждом конкретном значении параметра корень уравнения находится методом Goaiseek. Для нахождения корней уравнения при различных значениях параметра, эти значения вводятся в диапазон ячеек рабочего листа, формулы левых частей уравнений в другой диапазон, третий диапазон отводится под неизвестную.

Управление размером и перемещением элементов управления
В первый свой рабочий день в банке молодой программист Нестор Щукин получил задание от менеджера составить приложение, вычисляющее чистый текущий объем инвестиций от вкладов банка. Допустим, что с помощью этого приложения необходимо найти чистый текущий объем инвестиции 10 000 руб. при 7% годовой ставке, при которой банк получает годовые доходы 2 000 руб., 4 000 руб. и 7 000 руб. в последующие три года после вложения денег в инвестиционный проект.

Заполнение базы данных
Для заполнения базы данных на рабочем листе с помощью редактора пользовательских форм создадим диалоговое окно Регистрация туристов фирмы "Эх, прокачу!"

Построение поверхности
В данном приложении строится поверхность по введенным в диалоговое окно построение поверхности начальным, конечным значениям аргументов и их шагах изменения. Уравнение поверхности также вводится в программу из диалогового окна. Уравнение должно быть составлено в соответствии с правилами, по которым строятся функции рабочего листа, но в качестве аргументов в нем следует использовать х и у вместо ссылок на ячейки.

Периодические выплаты
Функция ППЛАТ (РМТ) вычисляет величину постоянной периодической выплаты ренты (например, регулярных платежей по займу) при постоянной процентной ставке.

Еще раз о составлении базы данных
В этом уроке строится приложение с пользовательским интерфейсом по заполнению и обработке базы данных туристической фирмы "С нами не соскучишься". База данных состоит из двух рабочих листов: БазаДанных и Архив. Кроме того, при построении сводной таблицы по базе данных создается рабочий лист своднаяТаблица.

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

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

Составление расписания
Трус, Балбес и Бывалый построили небольшой магазинчик "Придорожный лопух, 24 часа" у деревне Неелово на трассе Москва—Санкт-Петербург. Работу в магазинчике они разбили на две смены по 12 часов. В начале очередной недели они вместе составляют график своего дежурства на неделю, в котором подсчитывается число рабочих смен каждого компаньона.

Работа с файлами
Приведенная ниже программа является примером создания простейшего текстового редактора, в который можно загрузить из файла уже существующий текст, отредактировать его и записать измененный текст в файл. Имя открываемого файла вводится в переменную имяФайла. Свободный номер для файла получается при помощи функции FreeFile и записывается в переменную Номер.