ВЕДЕНИЕ В MACRO.
MACRO - это последовательность указаний (MACRO - команд), которые могут контролировать работу таблицы и состояние экрана в SuperCalc4.SuperCalc4 предлагает широкий выбор MACRO - команд.
Последовательности MACRO - команд выполняют повторяющиеся действия быстро и аккуратно.Они могут быть как простыми , так и сложными.Вы можете сохранить MACRO внутри какой-то одной таблицы и использовать её для работы только с этой таблицей.А можете создать MACRO в виде отдельного файла на диске и использовать его слюбой таблицей.
СТРУКТУРА MACRO
Для удобства дальнейшего изложения поясним сначала терминологию SuperCalc4.
Термины | Значения |
.MACRO .MACRO - команды .MACRO - клавиши Макросы .MACRO - файл .MACRO - прог-ма |
язык пакета SC4 операторы языка MACRO MACRO - команды, используемые для ввода в действие клавиш,не дающих изоображение на экране. программа на языке MACRO, для соз- дания которой используется команда //Macro,Write. Результатом выполнения этой коман- ды является отдельный текстовый файл, записанный на диск с рсшире- нием .XQT.Он может быть использо- ван в любой талице SuperCalc4. программа на языке MACRO, создан- ная внутри какой-то одной таблицы и в ней хранящаяся. Она предназна- чена для обработки только этой таб. |
НАИМЕНОВАНИЕ И ЗАПУСК МАКРОСОВ.
Составленный из языка MACRO - команд макрос может существовать и работать в двух видах: либо как MACRO-программа, либо MACRO-файл. Для того, чтобы макрос заработал, ему необходимо дать имя и запустить его.Различают три основные части макросов:
во-первых,команды для выполнения;
во-вторых,метки для выделения отдельных частей макроса;
в-третьих,комментарии для пояснения каждого шага.
---------------------------------------------------------|
| A || B || C ||
1 2 3 4 5 6 |
МЕТКИ MACRO-КОМАНДЫ КОММЕНТАРИИ chek if D1=3branch m Если D1=3,то на метку М beep Иначе издать гудок m let d1,2 Ввод 2 в клетку D1 branch check Пойти на метку chek |
--------------------------------------------------------------
- 2 -
Для размещения составных частей макросов в SuperCalc4 используются три любые последовательные колонки,например:первая колонка - для меток (колонка A);вторая - для MACRO-команд (колонка B);третья - для комментариев (колонка C).
Для работы необходима вторая колонка.Остальные две колонки необязательны, но именно они делают макрос легким для чтения и загрузки.Вторая (основная) колонка составляется из клеток содержащих текст.Эти клетки называются MACRO-клетками и содержат MACRO-команды.Некоторые MACRO-команды заключаются в фигурные скобки,например:
DOWN,VIEW,CALL.
Некоторые - записываются в таком же виде ,как (/)-команды SuperCalc4,если бы вы выполняли их набором первых букв команд,например:
/GB - снятие бордюра;
/OPGQ - выод на печать.
Все символы в SuperCalc4 (буквы,числа,знаки препинания) вводятся с клавиатуры,т.е. просто нажатием соответствующей клавиши.Исключение составляют символы и ~,которые при вводе в макрос необходимо заключить в фигурные скобки: и ~.Для клавиш ,не дающих изоображение на экране,используются их названия.MACRO-команды,используемые для ввода в действие таких клавиш называются MACRO-клавишами.
НАИМЕНОВАНИЕ И ЗАПУСК МАКРОСОВ
Составленный из MACRO-команд макрос может существовать и работать в двух видах :либо как MACRO-программа,либо как MACRO-файл.Для того,чтобы макрос заработал ,ему необходимо дать имя и запустить его.
MACRO-программа.
Для присвоения имени MACRO-программе используется команда /Name,Create.Имя даётся первой клетке программы.Признаком конца программы является пустая клетка.Таким образом,начало программы задаёт пользователь,а конец определяет SuperCalc4.Имя MACRO-программы может быть любым.Но для ускорения вызова MACRO-программы её имя должно быть одиночной буквой,которой предшествует ()-Backslash.Например ,если дать программе имя R, то запуск программы будет осуществляться нажатием клавиш <ALT>-<R>.
Запуск MACRO-программы может быть осуществлён двумя способами:
ВАРИАНТ 1.
Нажмите <ALT>-<F5> или <ALT>-<=>,затем в строке ввода наберите имя MACRO-программы.Например,для запуска MACRO-программы с именем TABEL нажмите одновременно <ALT>-<F5>,затем введите TABEL и нажмите <ENTER>.А можно просто нажать <ALT>-<F5>,подвести курсор в первую клетку MACRO-программы и нажать <ENTER>.
ВАРИАНТ 2.
Если вы дали MACRO-программе название с помощью и буквы,её можно запустить одновременно нажатием клавиши <ALT> и соответствующей буквы.
- 3 -
MACRO-файл.
Для работы с MACRO-файлами существует комманда //Macro.
Набрав в сроке ввода //Macro,вы попадёте в меню:
--------------------------------------------------------|
| A || B || C || D || E || F || G || H ||
-------------------------------------------------------------|
| 1 | |
| . | |
| . | |
| 19 | |
| 20 | |
------ |
| ->A1 | Learn Read Write eXeute | 9>//Macro, | MENU Define learn Range (ALT-F4 to enable) |
--------------------------------------------------------------
Описание опций команды //Macro
I Learn - определяет дипазон клеток для режима LEARN.
II Read - загружает MACRO-файл в указанное место в таблице По умолчанию MACRO-файлы имеют расширение .XQT.
После ввода имени файла и диапазона клеток для его загрузки в PROMPT-строке появится меню:
--------------------------------------------------------|
| A || B || C || D || E || F || G || H ||
-------------------------------------------------------------|
| 1 | |
| . | |
| . | |
| 19 | |
| 20 | |
------ |
| ->A1 |
All Macros-Only Labels-Macros Comment-Macros |
22>//Macro,Read,W,A3:C9, |
MENU Read/Write macros, labels and comments |
--------------------------------------------------------------
Значения опций этого шага:
All - загружает весь MACRO-файл,располагая метки слева от основного диапазона,а комментарии справа.Колонка A не может быть использована для основного диапазона.
Macros-Only - загружает только MACRO-команды в основной диапазон.
Labels-Macros - загружает только метки и MACRO-команды.
Comment-Macros - загружает только MACRO-команды и комментарии.
III Write - записывает указанный диапазон клеток в файл на диск с расширением .XQT.Если файл с таким именем существует, то SuperCalc4 в PROMPT-строке предложит :Change, Backup, Overwrite.
- 4 -
--------------------------------------------------------| | A || B || C || D || E || F || G || H ||
-------------------------------------------------------------| | 1 | | | . | | | . | | | 19 | | | 20 | |
------ |
| ->A1 |
Change Backup Overwrite |
20>//Macro,Write,W.XQT |
MENU File exists: Change name on disk |
--------------------------------------------------------------
Ниже приведены значения опций этого шага:
Change - позволяет изменить или отредактировать имя файла. Backup - записвает на диск два файла:найденный с расширением BAK;новый с расширением XQT
Overwrite - полностью перписывает старый файл на новый. После вода имени файла и диапазона клеток для его за-
писи в PROMPT-строке появится меню:
--------------------------------------------------------|
| A || B || C || D || E || F || G || H ||
-------------------------------------------------------------|
| 1 | |
| . | |
| . | |
| 19 | |
| 20 | |
------ |
| ->A1 |
All Macros-Only Labels-Macros Comment-Macros |
23>//Macro,Write,W,A3:C9, |
MENU Read/Write macros, labels and comments |
--------------------------------------------------------------
Ниже приведены значения опций этого шага:
All - запишет весь MACRO-файл,располагая метки слева от основного диапазона,а комментарии справа.Колонка A не может быть использована для основного диапазона.
Macros-Only - запишет только MACRO-команды в основной диапазон.
Labels-Macros - запишет только метки и MACRO-команды.
Comment-Macros - запишет только MACRO-команды и комментарии.
IV Execute - запуск MACRO-файла из таблицы.
Autoexec - Macro.
Вам может потребоваться, чтобы MACRO-программа автоматически запускалась призагрузке таблицы.Для этого дайте ей название: AUTOEXEC.
Для автоматическго запуска MACRO-файла призапуске пакета SuperCalc4,надо дать ему имя AUTOEXEC.XQT.
- 5 -
MACRO-РЕЖИМЫ
В SuperCalc4 существует три MACRO-режима работы,которые приведены в таблице :
Режим | Включение/выключение | |
STEP LEARN DIREСT |
<ALT> <ALT> <ALT> |
<F2> <F4> <F6> |
Служебный вид панели экрана при работе режимов MACRO,STEP,LEARN,DIRECT:
->B2 With: 1> READY |
9 Memory: 379 Last Col/Row:K2 F1:Help F3:Names Ctrl-Break:Chanel |
MACRO |
----- ->A1 With: 1> READY |
----------------------------------------- 9 Memory: 379 Last Col/Row:A1 F1:Help F3:Names Ctrl-Break:Chanel |
------------ STEP |
----- ->A1 With: 1> READY |
----------------------------------------- 9 Memory: 379 Last Col/Row:A1 F1:Help F3:Names Ctrl-Break:Chanel |
------------ LEARN |
----- ->A1 With: 1> EDIT ----- |
----------------------------------------- 9 Memory: 379 Last Col/Row:A1 F1:Help F3:Names Ctrl-Break:Chanel ----------------------------------------- |
------------ DIRECT ------------ |
Использование STEP-режима. |
Включив STEP-режим,вы можете следить за ходом выполнения макроса от оператора к оператору(пошагово).
Вид служебной панели при выполнении макроса в этом режиме:
------------------------------------------------------------
->B2 Text="SUSPEND
With: 9 Memory: 379 Last Col/Row:B3
1>
READY F1:Help F3:Names Ctrl-Break:Chanel F8:STEP4/0@B1/1
------------------------------------------------------------
- 6 -
В INDICATOR -части строки появляется подсказка:
F8:STEP - x/y
Здесь координаты x/y обозначают ряд и номер позиции символа в исполняемой MACRO-команде. При работе макроса в таком режиме перход от действия к действию происходит при нажатии клавиш F8.После выполнения MACRO-команды вы можете пользоваться стрелками для движению по экрану и делать все необходимые изменения, но прежде,чем нажать клавишу F8, верните курсор на исходную позицию.Схема работы STEP-режима показана в таблице:
Действие | Клавиши |
1.Вход в режим 2.Переход от одной MACRO-команды к другой 3.Выход из режима |
<ALT>-<F2> <F8> <ALT>-<F2> |
Использование LERAN-режима.
LEARN-режим обепечивает автоматическую запись каждой нажатой вами клавиши в определённом месте таблицы в виде MACRO-команды.Схема работы LEARN-режима:
Действие | Набор клавиш |
1.Ввод границ дипазона,в котором вы будете размещать текст макроса. 2.Вход в режим. 3.Выполнение операций ,предназначенных для описания в макросе. 4.Временный выход из режима LEARN: а)переход в DIRECT-режим б)ввод в макрос текста с клавиатуры в)возврат в LEARN-режим 5.Выход из режима |
//Macro,Learn,<диапазон> <ALT>-<F4> <ALT>-<F6> <ALT>-<F6> <ALT>-<F4> |
Теперь вам остаётся дать имя макросу и запусть его в работу.Так можно создать как MACRO-программу ,так и MACRO- файл
Использование DIRECT-режима.
Этот режим используется как вспомогательный режим для времееного выхода из LEARN-режима.Он задаётся только из режима LEARN, и в нём команды не выполняются.
ОПИСАНИЕ MACRO-КОМАНД.
Все существующие MACRO-команды SuperCalc4 можно разделить на три вида: экранные, управляющие и MACRO-команды для ввода данных.
- 7 -
Экранные MACRO-команды.
SuperCalc4 даёт возможность с помщью MACRO-команд контролировать вид служебной панели и подачу компьютером звуковых сигналов.Для этого используются 12 MACRO-команд, которые приведены в таблице:
MACRO | команда | Значение |
1.BEEP x 2.INDICATOR "текст" 3.MACROPROMPT "текст" 4.MESSAGE "текст" 5.PROMPT "текст" 6.STATUS "текст" 7.PANELOFF 8.PANELON 9.ENTRYOFF 10.ENTRYON 11.WINDOWSOFF 12.WINDOWSON |
Звуковой сигнал, повторяющийся x раз Замена INDICATOR в строке HELP на заданный текст (до 5 символов) Замена MACROPROMPT в строке HELЗ на заданный текст (до 18 символов) Замена MESSAGE в строке HELP на заданный текст (до 49 символов) Контроль строки PROMPT Контроль строки STATUS Блокировка строки ENRTY,фиксация изоображения в других строках служебной панели Восстановление нормальной функции всех строк служебной панели Очистка строки ENTRY Восстановление нормальной функции строки ENTRY Блокировка динамического отображения окна таблицы Восстановление нормальной функции отображения окна таблицы |
Управляющие MACRO-команды.
SuperCalc4 включает MACRO-команды управления, позволяющие составлять макросы из различных типов логических конструкций (последовательных,циклических,ветвление), а также MACRO-команды, полностью контролирующие процесс обработки электронной таблицы.Все управлящие MACRO-команды приведены в таблице:
MACRO | команда | Значение |
1.BRANCH xx 2.BREAKOFF 3.BREAKON 4.CALL xx x1,x2... |
Переход выполнения макроса на указанную метку xx Отменяет возможность прерывания макроса по команде <CTRL>-<BREAK> Включает возможность прерывания макроса по команде <CTRL>-<BREAK> Переход выполнения макроса на |
- 8 -
MACRO | команда | Значение |
5.COMMENT "текст" 6.DEFINE клетки 7.DELAY T 8.DISPATCH xx 9.IF условие 10.LABEL xx 11.LET клетка,xx 12.MENU xx 13.QUIT 14.RESTART 15.RETURN |
метку xx (с возвратом и пере- дачей параметров x1,x2... Ввод комментариев в текст макроса Ввод аргументов ,переданных командой CALL,в заданные клетки Прерывание процесса макроса на число секунд указанное в T Продолжение макроса с клетки, указанной в xx Условный оператор Метки в MACRO-файлах Ввод переменных или выражений (xx) в указанную клетку Оператор, обозначающий начало функции МЕНЮ Прерывание макроса Отмена всех "возвратов", определёнными CALL Возврат выполнения команде , следующей за командой CALL |
MACRO-команды для ввода данных.
MACRO-команды этого вида реализуют в SuperCalc4 ввод данных пользователемв интерактивном режиме.Сюда также относятся так называемые вспомогательные команды,контролирующие работу режима ВСТАВКА и процесс записи файлов на диск.
Все они приведены в таблице:
MACRO | команда | Значение |
1.? 2.SUSPEND 3.KEY 4.GET адрес 5.GETCELLS текст,адрес 6.GETCOLS текст,адрес 7.GETKEY текст,адрес 8.GETNUMBERтекст,адрес 9.GETROWS текст,адрес 10.GETTEXT текст,адрес 11.INSERTOFF 12.INSERTON 13., 14.BACKUP 15.OVERWRITE |
Приостановка выполнения макроса: до нажатия клавиши <ENTER> до нажатия клавиши <F8> до нажатия любой клавиши до введения по адресу: -записи,с клавиатуры -диапазона клеток -диапозона столбцов -любой клавиши -числа -номера строки -текста Выключение режима ВСТАВКА Включение режима ВСТАВКА Всавка в текст фигурной скобки Создание BACKUP-файла Презапись файла |
- 9 -
ПРИМЕР
Если мы на протяжении какого- то время ни работаем с определённой таблицей, то каждый раз при загрузке SuperCalc4 нам приходятся выполнять ряд действий для загрузки нашей таблицы (например, EXAMPLE.CAL). Это задание можно упрастить с помощью MACRO-команд.
Для этого создадим MACRO-файл с именем L.XQT (от слова Load), который и будет загружать данную таблицу.Выполним ряд команд:
1.Войдём в SuperCalc4 запуском файла SC4.COM
2.Выберем меню //Macro,Learn
3.Затем введём диапазон клеток (например столвец B)
4.Нажатием <ALT>-<F4>,войдём в режим LEARN
5.Далее выполняем действия ,которые хотим поместить в MACRO-файл ( </> <L> EXAMPLE.CAL <ENTER> <A> -- для /Load,Example.CAL,All )
6.Выйдем из режима LEARN нажатием <ALT>-<F4>
7.Для удобства в клетку С1 введём кооментарии,а в A1-метки. Установим необходимую ширину для удоства чтения.
Если мы сдела ли всё правильно ,то на экране увидим :
| | A | | B | || C || |
1 | 2 | 3 | . | . | 19 | 20 | |
МЕТКИ L |
MACRO-КОМАНДЫ /LExample.CAL~A | КОММЕНТАРИИ | ;Load,Example.CAL,All | | | | | | |
->A1 Text="L |
With: 7 Memory: 379 Last Col/Row:C2 |
1> |
READY F1:Help F3:Names Ctrl-Break:Chanel |
|
--------------------------------------------------------------
8.Запишем MACRO-команды командой //Macro,Write,L,B,All
9.Теперь мы можем наш MACRO-файл L.XQT запустить,нажатием клавиш <ALT>-<L>.
Если необходимо чтобы EXAMPLE.CAL загружалась всегда после запуска SuperCalc4,нужно только переименовать L.XQT в AUTOEXEC.XQT
- 10 -
ИСПОЛЬЗУЕМАЯ ЛИТЕРАТУРА :
* Черемных О.С. "SuperCalc 4 и 5 - руководство подьзователя" - М.,1992
* Литвин О.Ф. "Табличный процессор SuperCalc4."
М.:Финансы и статистика, ЮНИТИ, 1991
* Рыжкова М.Ю.,Миргалиев И.А.,Казакова И.И.
"SuperCalc4.Основы организации и методы работы" - М.:
"КОМЭК",1992
* Дойл У. "Табличный процессор SuperCalc для
персонального компьютера." - М.:Финансы и статистика,
1987
_