Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VBA в примерах .doc
Скачиваний:
113
Добавлен:
03.05.2015
Размер:
1.33 Mб
Скачать

Глава 3. Создание трюков с помощью макросов 52

Подсчет количества открытий файла 52

Получение «закрытой» информации 52

Произвольный текст в строке состояния 52

Быстрое изменение заголовка окна 53

Ввод данных с помощью диалогового окна 53

Применение функции без ввода ее в ячейку 54

Скрытие строк и столбцов от посторонних 54

Быстрое выделение ячеек, расположенных через интервал 55

Определение количества ячеек в диапазоне и суммы их значений 56

Подсчет именованных объектов 57

Быстрый поиск курсора 58

Поиск начала и окончания диапазона, содержащего данные 58

Трюки с примечаниями 58

Подсчет примечаний 58

Вывод на экран всех примечаний рабочего листа 59

Создание списка примечаний рабочего листа 60

Несколько трюков в одном примере 61

Дополнение панели инструментов 63

Примеры создания панелей инструментов 63

Формирование пользовательского меню 65

Проверка наличия файла по указанному пути 66

Автоматизация удаления файлов 69

Перечень имен листов в виде гиперссылок 69

Удаление пустых строк на рабочем листе 69

Запись текущих данных в текстовый файл 70

Экспорт и импорт данных 71

Одновременное умножение всех данных диапазона 73

Преобразование таблицы Excel в HTML-формат 73

Поиск данных нештатными средствами 77

Включение автофильтра с помощью макроса 78

Трюки с форматированием 78

Изменение формата представления чисел нештатными средствами 78

Помещение последнего символа ячейки над строкой 79

Создание нестандартной рамки 79

Быстрая вставка фамилий должностных лиц в документ 80

Вызов окна настройки шрифта 80

Вывод информации о текущем документе 81

Вывод результата расчетов в отдельном окне 81

Вывод разрешения монитора 81

Что открыто в данный момент? 82

Создание бегущей строки 82

Создание бегущей картинки 83

Мигающая ячейка 84

Вращающиеся автофигуры 85

Вызов таблицы цветов 87

Создание калькулятора 88

Еще о создании пользовательских меню 88

Меню с пользовательскими командами 88

Замена стандартного меню пользовательским 92

Склонение фамилии, имени и отчества 93

Получение информации об используемом принтере 98

Вывод текущей даты и времени 99

Автоматическое создание документов Word на основе табличных данных Excel 100

Создание списка панелей инструментов и контекстных меню 102

Создание списка пунктов главного меню Excel 103

Создание списка пунктов контекстных меню 103

Отображение панели инструментов при определенном условии 104

Скрытие и отображение панелей инструментов 106

Создание меню на основе данных рабочего листа 107

Создание контекстного меню 110

Просмотр содержимого папки 112

Получение информации о состоянии дисков 117

Расчет среднего арифметического 118

Вывод списка доступных шрифтов 118

Обработка сразу нескольких внешних файлов 119

Запуск таблицы символов из Excel 120

Создание раскрывающегося списка 121

Добавление команды в меню 122

Добавление команды в меню Сервис 122

Добавление команды в меню Вид 123

Глава 4. Трюки и эффекты с помощником 125

Мультфильм с помощником в главной роли 125

Дополнение помощника текстом, заголовком, кнопкой и значком 127

Новые параметры помощника 128

Использование помощника для выбора цвета заливки 129

Глава 5. Эксперименты с диаграммами 130

Построение диаграммы с помощью макроса 130

Сохранение диаграммы в отдельном файле 131

Построение и удаление диаграммы нажатием одной кнопки 132

Вывод списка диаграмм в отдельном окне 133

Применение случайной цветовой палитры 134

Эффект прозрачности диаграммы 134

Построение диаграммы на основе данных нескольких рабочих листов 136

Создание подписей к данным диаграммы 138

Глава 6. Создание полезных программ 139

Программа для составления кроссвордов 139

Игра «Минное поле» 143

Игра «Угадай животное» 146

Расчет на основании ячеек определенного цвета 148

Глава 2. Рабочая областьMicrosoftExcel

Рабочая книга

Быстрое размножение рабочей книги

Листинг 2.1.Размножение рабочей книги

SubDuplicateBook()

DimavarFileNamesAsVariant

' Формирование массива из путей для копий книги

avarFileNames = Array("C:\" & _

ActiveWorkbook.Name, "D:\" & ActiveWorkbook.Name)

' Сохранение книги

ActiveWorkbook.SaveAs avarFileNames

End Sub

Сохранение рабочей книги с именем, представляющим собой текущую дату

Листинг 2.2.Сохранение книги с именем, представляющим собой текущую дату

Sub SaveAsDate()

Dim strDate As String

' Получение текущей даты и представление ее в формате "ддммгг"

strDate=Format(Now(), "ddmmyy")

' Сохранение книги в текущую папку под новым именем

ActiveWorkbook.SaveAs ActiveWorkbook.Path & "\" & strDate

End Sub

Создание книги с одним листом

Листинг 2.3.Книга с одним листом

SubNewOneSheetBook()

Workbooks.AddxlWBATWorksheet

EndSub

Установка и снятие защиты рабочей книги

Листинг 2.4. Защита рабочей книги

Sub Worksheet_BeforeRightClick(ByVal Target As Range, _

Cancel As Boolean)

If Target.Address = "$D$2" Then

' Установка защиты рабочей книги (с паролем "123", _

включенной защитой структуры книги и защитой расположения _

окон)

ThisWorkbook.Protect"123",True,True

' Указание не обрабатывать нажатие кнопки мыши _

в этой ячейке

Cancel = True

ElseIf Target.Address = "$E$5" Then

' Снятие защиты с книги (необходимо указать ранее установленный _

пароль)

ThisWorkbook.Unprotect "123"

Cancel = True

End If

EndSub

Листинг 2.5.Запрет печати книги

Sub Workbook_BeforePrint(Cancel As Boolean)

' Установка флага в TrueзаставляетExсelигнорировать команду _

отправки книги на печать

Cancel=True

EndSub

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]