Экспорт и импорт данных. Связь документов 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Экспорт и импорт данных. Связь документов



Экспорт и импорт объектов является одной из важнейших функций, поскольку идеология Windows ориентирована на то, чтобы каждый объект обрабатывался своим инструментарием, в частности таблицы и диаграммы - Excel, текст - Word, базы данных - Access, рисунки - графическим редактором и т.д. Поэтому объекты должны легко переноситься из одной среды в другую. Наиболее простой способ переноса - через буфер.

· Скопируйте таблицу (предварительно убрав «Итоги») со страницы «Смета» рабочей книги в документ редактора Word. Для этого выделите таблицу и скопируйте ее в буфер. Загрузите Word. Выполните вставку содержимого буфера.

· Средствами Word приведите таблицу к самому лучшему, на ваш взгляд, виду. Выполните сортировку таблицы по величине затрат. Выделите таблицу и перенесите ее на свободное место листа «Смета» рабочей книги Excel. Какие изменения вы обнаружили при последовательном переносе объекта? Попытайтесь объяснить причину несовпадения результата.

· Выполните предыдущую работу, но реализуя при этом в документе Word специальную вставку (Правка/Специальная вставка/Текст в формате RTF).

· Скопируйте таблицу в документ Word в режиме специальной вставки как лист Excel, установив при этом флажок «Связать». Замените на исходном листе «Смета» число разрядников 110 кВ на 20. Что изменилось в таблице Word? Число разрядников здесь также должно измениться. Между документами Excel и Word установлена жесткая, синхронная связь.

· Создайте на листе Excel какую-либо диаграмму, например гистограмму затрат. Выполните ее копирование в документ Word в режиме связи. Измените какие-либо данные, влияющие на диаграмму. Что с диаграммой в документе Word? Выполните на ней «двойной клик». Что произошло?

· Закройте ваш Excel-файл. Вставьте в вашем документе Word в качестве объекта только что закрытый (не загруженный в данный момент) файл Excel (Вставка/Объект/Создание из файла). Как выглядит документ Excel в документе Word? Активизируйте (двойной щелчок мыши) вставленный фрагмент. Где вы? Как выглядит инструментальное меню? Измените что-либо в листе (таблицу на листе «Смета», диаграмму и др.). Щелкните мышкой вне вставленного поля. Где вы? Как выглядит инструментальное меню? Загрузите книгу Excel, с которой вы только что работали. Остались ли сделанные вами изменения?

· Выполните связку документа Word c рабочей книгой Excel.

Макрос

Процедуры пользователя

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

Необходимо создать соответствующие макросы, поскольку только макросы - решение наших проблем!

· Добавьте новый лист книги и назовите его, например, «Игра». Создаем макрос крестика.

· Установите курсор в произвольном месте экрана, где предполагается записать крестик. Выполните команду записи макроса Сервис/Макрос/Начать запись. Появляется диалоговая панель (рис. 2.22), где укажите имя и описание макроса.

Рис. 2.22. Запись макроса

· Укажите комбинацию клавиш макроса, например Ctrl+q. [ OK ]. Началась запись макроса. В строке состояний появилось слово “Запись”. Установите параметры шрифта (например, Arial Cyr, 14). Запишите в ячейке букву Х (крестик). Закончите редактирование нажатием кнопки - «Ввод» (нажатие клавиши Enter сменит АК, и далее придется вновь возвращаться к исходной). Отцентрируйте АК. Установите требуемый цвет фона и символа. Если что - либо вас не удовлетворяет - исправьте. Все? Нажмите клавишу “Остановить запись”.

· Протестируйте полученный макрос. Установите курсор на новое место и выполните Ctrl+q. Макрос работает? Если плохо – повторите запись макроса с начала. Дополнительный тренинг – только на пользу.

Посмотрим, что создал Excel. Выполните Сервис/Макрос/Макросы. Выберите требуемый макрос «Cross» и нажмите клавишу «Изменить». Появляется панель Visual Basic с текстом записанного макроса (процедура). Если вы действительно хотите глубоко понять Excel, вам придется изучить и Visual Basic. Здесь мы даем программу с нашими комментариями:

' cross Макрос Комментарии
'Крестик начинаются
' Сочетание клавиш: Ctrl+q с апострофа

 

 

Sub cross() Начало процедуры
With Selection.Font Настройка символов выделенной области
.Name = "Arial Cyr" Тип шрифта
.FontStyle = "обычный" Тип стиля
.Size = 14 Размер
.Strikethrough = False Далее параметры не меняются ()
.Superscript = False (заданы по умолчанию)
.Subscript = False  
.OutlineFont = False  
.Shadow = False  
.Underline = xlNone  
.ColorIndex = 3 Цвет
End With Конец установки параметров символов
With Selection.Interior Установка параметров фона АК
.ColorIndex = 4 Цвет
.Pattern = xlSolid Структура заполнения ячейки
.PatternColorIndex = xlAutomatic  
End With  
ActiveCell.FormulaR1C1 = "X" Запись символа Х в АК
With Selection С АК производятся действия:
.HorizontalAlignment = xlCenter Центрирование
.VerticalAlignment = xlBottom Выравнивание по низу
.WrapText = False Окантовка
.Orientation = xlHorizontal Ориентация
End With Конец установки
End Sub  

 

При определенных навыках и наличии “образцов” такие программы можно писать “с чистого листа”. Однако осмелимся посоветовать вам составлять небольшие фрагменты - макросы, а уж потом объединять их в сложные программные модули.

· Создайте макрос нолика.

· Создайте макрос - “очиститель ячейки”. Тем, кто чувствует себя достаточно подготовленным, чтобы разобраться в Visual Basic, - попытайтесь выполнить эту работу через копирование одного из созданных макросов с последующим редактированием копии.

· Создайте на инструментальном меню три новые кнопки и свяжите их с созданными макросами.

· Поиграйте в "крестики – нолики" с соседом.

Диалоговые окна

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

· Перейдите на лист "Смета". Если у вас несколько сметных таблиц (получены в процессе тренинга), оставьте лишь одну.

· Создайте два макроса сортировки (Данные/Сортировка) таблицы по наименованию и затратам. Посмотрите и попытайтесь осознать тексты макросов.

· В вашу рабочую книгу добавьте лист типа «Окно диалога». Если на экране отсутствует инструментарий элементов управления - вызовите его. Изучите с помощью "Справки" назначение каждого элемента управления. Как-либо назовите диалоговую панель, например «Сортировка».

· Создайте в диалоговом поле две кнопки. Назовите их "Наименование" и "Цена".

· Через вызов контекстного меню на кнопке (ПК) присвойте каждой кнопке соответствующий макрос (команда «Назначить макрос»).

· Найдите на инструментальной панели кнопку " Отобразить окно " и нажмите ее. Появилась новая, рабочая, диалоговая панель. Нажмите какую-либо созданную вами кнопку, например "Наименование". Практически каждый из вас должен потерпеть "фиаско". На экране появилось сообщение об ошибке (рис. 2.23).

Рис. 2.23. Ошибка макроса

Дело в том, что при работе с диалоговой панелью вы находитесь на особом листе рабочей книги - " Диалог ", и когда вы начинаете выполнять макрос сортировки, программа не знает, где взять необходимую таблицу. В начале макроса необходимо идентифицировать лист таблицы. В программных модулях не хватает оператора Sheets("Смета").Select, выделяющеголист «Смета». Эту строку можно было бы вставить вручную, однако с целью расширения багажа приемов создания макросов перепишем макрос "Наименование".

· Вы находитесь на листе «Диалог»? Правильно. Повторите запись макросов сортировки с новыми именами "Наименование1" и "Затраты1". В отличие от предыдущего случая после начала записи вам нужно перейти на лист «Смета» с упомянутой таблицей, а далее операции идентичны. Перейдите на лист «Диалог», присвойте кнопкам новые макросы и вновь попытайтесь исполнить сортировку по наименованию и затратам. Сейчас сортировка должна пройти успешно. Выйдите из диалога, нажав на кнопку "Отмена".

· Найдите и сравните запись на Visual Basic процедур сортировки - прежней "Наименование" и новой "Наименование1". В чем отличие?

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

· Под именем Auto_Open создайте макрос перехода на диалоговую панель и запуска диалога (переход на лист-диалог, запуск диалога, отмена, прекращение записи макроса). Закройте и вновь откройте вашу рабочую книгу.

· Расширьте возможности диалога, например, за счет отображения диаграммы производства рогов и копыт.

UserForm

Создание диалогов через специальный лист со слегка архаичным названием «Окно диалога Excel 5.0» (была такая версия электронных таблиц), мягко говоря, устарело. Современные версии Excel располагают более мощным средством создания диалоговых окон - UserForm. Для создания такого окна:

o Перейдите в среду Visual Basic (Alt+F11 или команда Сервис/Макрос/ Редактор Visual Basic). Найдите и откройте окно «Insert UserForm» (кнопка на ИМ). Какие работы можно выполнять с помощью данного окна? Выберите вставку «UserForm».

Вы видите среду, которая мало чем отличается от листа «Диалог». Однако рядом с панелью «UserForm» располагается окно ее свойств. Попытайтесь разобраться, какие свойства панели представлены. Измените имя диалоговой панели (свойство Name) на «Мой_диалог». Измените ее титул (свойство Caption) на «Мой диалог».

· Введите две кнопки «Наименование» и «Затраты» и подключите к ним соответствующие макросы. Для этого необходимо в режиме конструктора UserForm сделать двойной клик на кнопке. Появляется заготовка программного модуля, который подключается при нажатии кнопки, например

Private Sub CommandButton1_Click()

End Sub

В тело модуля (между операторами начала и конца) вставляется оператор вызова процедуры (имя процедуры), например Наименование1. С целью не допустить ошибок при написании имени процедуры рекомендуется вызвать «Проводник по объектам», кнопка Object Browser ИМ. В классе Globals в конце списка вы найдете названия созданных вами макросов. Скопируйте, а затем вставьте на нужное место название той процедуры, что требуется.

Запуск диалоговой панели из среды Visual Basic осуществляется либо через меню Run/Run Sub/UserForm, либо кнопкой ИМ. Для автоматического вызова при открытии книги, как и в случае диалоговой страницы, необходимо создать процедуру с именем Auto_Open, а в ее тело вставить оператор вызова диалоговой панели Мой_диалог.Show (имя панели и ключевое слово для ее открытия):

Public Sub Auto_Open()

Мой_диалог.Show

End Sub



Поделиться:


Последнее изменение этой страницы: 2016-08-26; просмотров: 421; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.14.142.115 (0.032 с.)