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

Глава 3. Создание трюков с помощью макросов Подсчет количества открытий файла

Листинг 3.1.Количество открытий файла (вариант 1)

Sub Auto_Open()

Worksheets(1).Cells(1) = Worksheets(1).Cells(1) + 1

EndSub

Листинг 3.2.Количество открытий файла (вариант 2)

Sub Auto_Open()

Worksheets(1).Cells(1, 1) = Worksheets(1).Cells(1, 1) + 1

EndSub

Листинг 3.3.Количество открытий файла (вариант 3)

Sub Auto_Open()

Worksheets(1).Range("A1") = Worksheets(1).Range("A1") + 1

End Sub

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

Листинг 3.4.Извлечение данных из закрытого файла

SubGetDataFromFile()

Range("A1").Formula = "='C:\[Example.xls]Лист1'!A1"

End Sub

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

Листинг 3.5.Произвольный текст в строке состояния

Sub ChangeStatusBarText()

Application.StatusBar = "Как надоело работать!!!"

End Sub

Листинг 3.6.Восстановление строки состояния

Sub ReturnStatusBarText()

Application.StatusBar = False

End Sub

Листинг 3.7.Бегущая строка в строке состояния

Sub MovingTextInStatusBar()

Dim intSpaces As Integer

' Изменение количества пробелов в начале строки (от 20 до 0) - _

строка бежит (скорее, ползет) влево

ForintSpaces= 20To0Step-1

' Запись текста в строку состояния

Application.StatusBar = Space(intSpaces) & "Как надоело работать!!!"

' Выдерживаем паузу

Application.Wait Now + TimeValue("00:00:01")

' Дадим Excelобработать пользовательский ввод

DoEvents

Next

Application.StatusBar = False

End Sub

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

Листинг 3.8.Изменение заголовка окна

SubNewTitle()

Application.Caption= "Какая хорошая погода"

End Sub

Листинг 3.9.Изменение заголовка окна (со скрытием названия файла)

SubNewTitle()

Application.Caption= "Какая хорошая погода"

ActiveWindow.Caption = ""

End Sub

Листинг 3.10. Еще один вариант изменения заголовка

SubNewTitle()

Application.Caption= "Какая хорошая погода"

ActiveWindow.Caption = "А завтра будет дождь"

End Sub

Листинг 3.11.Возврат к первоначальному заголовку

Sub ReturnTitle()

' Возвращение заголовка приложения (то есть Excel)

Application.Caption = Empty

' Указание правильного названия открытого файла (книги)

ActiveWindow.Caption = ThisWorkbook.Name

End Sub

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

Листинг 3.12.Диалоговое окно ввода данных

SubInputDialog()

DimstrInputAsString

' Вызов стандартного диалогового окна ввода данных

strInput = InputBox("Введите данные", "Ввод данных")

End Sub

Листинг 3.13.Значения по умолчанию

Sub NewInputDialog()

Dim strInput As String

' Вызов стандартного диалогового окна ввода со значением _

по умолчанию

strInput = InputBox("Введите данные", "Ввод данных", _

"Значение по умолчанию", 200, 200)

End Sub

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

Листинг 3.14.Применение функции без ввода в ячейку

Sub Func()

[A1] = Application.Sum([B5:B10])

EndSub

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

Листинг 3.15.Скрытие строки

Sub HideString()

Rows(2).Hidden = True

End Sub

Листинг 3.16. Скрытие нескольких строк

Sub HideStrings()

Rows("3:5").Hidden = True

End Sub

Листинг 3.17. Скрытие столбца

Sub HideCollumn()

Columns(2).Hidden = True

EndSub

Листинг 3.18.Скрытие нескольких столбцов

Sub HideCollumns()

Columns("E:F").Hidden = True

EndSub

Листинг 3.19.Скрытие строки по имени ячейки

Sub HideCell()

Range("Секрет").EntireRow.Hidden = True

EndSub

Листинг 3.20.Скрытие нескольких строк по адресам ячеек

Sub HideCell()

Range("B3:D4").EntireRow.Hidden = True

EndSub

Листинг 3.21.Скрытие столбца по имени ячейки

Sub HideCell()

Range("Секрет").EntireColumn.Hidden = True

EndSub

Листинг 3.22.Скрытие нескольких столбцов по адресам ячеек

Sub HideCell()

Range("C2:D5").EntireColumn.Hidden = True

EndSub

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