Первые сведения - быстрое начало
Научитесь программировать за 5 минут
В Windows 95/98 существуют 2-а Бейсика
- VB Script
- предназначен для вписывания программок на Бейсике в текст HTML-файла.
- НЕ предназначен для управления другими программами ( на основе АВТОМАТИЗАЦИИ )
- - VB Script нас НЕ интересует.
- VB for Application (VBA)
- фирма Microsoft предлагает как основное средство для связи
между программами в среде Windows 95/98.
- - VBA нас ОЧЕНЬ интересует.
Exel Visual Basic
- Если VBA дополнить объектами MsExel,
- то получится Exel Visual Basic (который в 16 раз больше, чем исходный VBA).
- Если VBA дополнить объектами MsWord,
- то получится Word Visual Basic.
И т.д.
- Нас интересует Exel Visual Basic, т.к. в нем
- очень просто организованны данные.
Хотя, все о чем речь пойдет ниже,
- можно сделать в VBA любого продукта, входящего в MsOffice 97.
Общая стратегия программирования
- Если считать, что программа это ДАННЫЕ плюс АЛГОРИТМЫ,
- то в Exel Visual Basic
- данные вписаны в ЯЧЕЙКИ, а алгоритмы в КНОПКИ.
- Примечание. Этот текст не описание продукта VBA,
- а руководство к действию, поэтому в общих
- рассуждениях возможны (необходимы) упрощения.
- 1) Ввод данных.
- Щелкните мышкой по любой ячейке
- и впишите (с помощью клавиатуры) в нее
- любое число или слово.
- 2) Ввод алгоритмов.
- Нарисуйте кнопку.
- Сделайте по ней двойной щелчок.
- Введите подпрограмму.
Примечание. Ниже следуют две инструкции
- а) инструкция по рисованию кнопки и
- б) инструкция по вводу алгоритма (подпрограммы).
- 3) Сохраните полученный результат в файле.
- Полученный файл *.xls содержит в себе
- и данные и алгоритмы. - Он самодостаточен.
- - Его можно передать партнеру.
- - Он будет работать на любой машине где установлен MsExel 97.
Инструкция по рисованию кнопки
- 1) Сделайте рабочей кнопочную панель "Элементы управления".
- Для этого последовательно выберете в меню:
- Вид -> Панели инструментов -> Элементы управления.
- 2) Включите "Режим конструктора"
- - первая кнопка (с изображением треугольника)
- на кнопочной панели "Элементы управления".
- 3) Нарисуйте кнопку.
- Нажмите на изображение кнопки на панели "Элементы управления".
- Затем щелкните по тому месту рабочего листа,
- где должна помещаться эта кнопка.
- 4) Уточните место, и размер кнопки,
- передвигая и растягивая ее мышкой.
- 5) Сделайте двойной щелчок по кнопке.
- Введите подпрограмму.
Инструкция по вводу подпрограмы
- Возьмите готовый код, который делает
- (хотя бы приблизительно) то, что Вам нужно.
- Скопируйте его в тело процедуры,
- обслуживающей данную кнопку.
- А потом измените этот код.
- Где взять код?
- 1) В готовых примерах автоматизации MOM.EXE
- 2) В справочной системе Visual Basic.
- Поместите маркер на любой оператор подпрограммки
- И нажмите F1. Сверху во 2 (зеленой) строке
- будет слово "Пимеры", с иллюстрацией
- правильного употребления.
- Поискав я нашел там все примеры из книги:
- Microsoft OFFICE 97: разработка приложений, К.Соломон, 1997.
- 3) В крайнем случае в книге, в названии которой есть слова
- Visual Basic или VBA (но не Visual Basic Script),
- (например: VBA Office97. Офисное программирование, В.А.Биллиг, М.И.Дехтярь, 1998).
- Код Visual Basic достаточно прозрачен.
- И, даже ничего не зная,
- можно догадаться, что он примерно делает.
- Код надо менять и смотреть на результат.
- Если Вы допустите простую синтаксическую ошибку,
- Вас тутже поправит Компилятор. А если сложную смысловую,
- то поправит попозже - после нажатия на созданную кнопку.
- Основной смысл действий
- 1) взять число или слово из ячейки
- 2) преобразовать его
- 3) результат поместить в другую ячейку.
Примеры из файла "5 поиск.xls":
- 1) Как взять число или слово из ячейки
- Range("E5").Select ' Выбрать координату X из ячейки "E5" таблицы
- iX = ActiveCell.Value ' Запомним координату X в переменной iX
- Другой текст из тогоже примера:
- Range("C10").Select ' Выбрать имя из ячейки таблицы С10
- sName = ActiveCell.Value ' Запомним имя в переменной sName
- 2) Как преобразовать число или слово, запомненное в переменной
- (конструирование имени ячейки):
- Line = 12 + i ' сложение числовых переменных
- Yacheika$ = Line ' число преобразовывается в слово
- ' знак $ в конце имени означает, что это обязательно слово, а не число.
- Yacheika$ = "C" + Yacheika$ ' добавим в начало слова букву "C"
- (если i=5, то мы получим ячейку "C17")
- 3) Как результат поместить в другую ячейку.
- Range(Yacheika$).Select ' Выбрать ячейку таблицы
- ActiveCell.Value = "Вписываемый текст" ' Вписать имя
Дополнительная инструкция
- Управление любой программой из текста на Бейсике
- осуществляется посредством вызыва процедур и функции.
- Для управления программой Mom.exe необходимо
- 1) Создать объект
- Set MomTest = CreateObject("Mom.Document")
- при этом программа Mom.exe будет запущена на выполнение
- средствами операционной системы.
- 2) Вызавать процедуры и функции созданного объекта
- Например:
- MomTest.LoadFile = "Имя_файла"
- - загрузка *.mom, *.htm или *.chm файла.
- MomTest.PointScale -4000, 5500, 4
- - Показать кусок карты в масштабе No.4,
так, чтобы точка 4км на запад 5,5км на север
от центра карты была в центре экрана.
Проверьте, как работает созданная кнопка
- ВЫключите "Режим конструктора".
- Еще раз нажмите на первую кнопку (с изображением треугольника)
на кнопочной панели "Элементы управления" так, чтобы она ОТЖАЛАСЬ.
- Щелкните по созданной кнопке.
____________________________________________________
© Вл.Сидыганов 1999 momexe@mail.ru