Sub NewTitle()
Application.Caption = «Какая хорошая погода»
ActiveWindow.Caption = ""
End Sub
После запуска данного макроса заголовок примет следующий вид (рис. 3.3).
Рис. 3.3. Заголовок без названия файла
Можно сделать так, что после заголовка будет отображаться произвольный текст. Соответствующий макрос выглядит примерно так (листинг 3.10).
Sub NewTitle()
Application.Caption = «А завтра будет дождь»
ActiveWindow.Caption = «Какая хорошая погода»
End Sub
Результат выполнения этого макроса показан на рис. 3.4.
Рис. 3.4. Измененный заголовок с дополнительным текстом
Чтобы заголовок окна программы принял свой первоначальный вид, необходимо запустить следующий макрос (листинг 3.11).
Sub ReturnTitle()
' Возвращение заголовка приложения (то есть Excel)
Application.Caption = Empty
' Указание правильного названия открытого файла (книги)
ActiveWindow.Caption = ThisWorkbook.Name
End Sub
Этот макрос отменяет и изменения в заголовке, и ввод дополнительного текста после заголовка.
Ввод данных с помощью диалогового окна
В процессе работы могут возникать ситуации, когда для ввода данных целесообразно использовать вызываемое отдельно диалоговое окно. Решить эту задачу поможет следующий макрос (листинг 3.12).
Sub InputDialog()
Dim strInput As String
' Вызов стандартного диалогового окна ввода данных
strInput = InputBox(«Введите данные», «Ввод данных»)
End Sub
При запуске этого макроса на экране отобразится диалоговое окно (рис. 3.5).
Рис. 3.5. Диалоговое окно ввода данных
При необходимости можно задать текст, который будет отображаться в поле ввода диалогового окна по умолчанию (с помощью аргумента Default), а также определить параметры расположения окна на экране (аргументы XPos и YPos). Пример соответствующего макроса приведен в листинге 3.13.
Sub NewInputDialog()
Dim strInput As String
' Вызов стандартного диалогового окна ввода со значением _
по умолчанию
strInput = InputBox(«Введите данные», «Ввод данных», _
«Значение по умолчанию», 200, 200)
End Sub
Окно, выводимое на экран при выполнении данного макроса, представлено на рис. 3.6.
Рис. 3.6. Текст по умолчанию в окне ввода данных
Работа в данном окне ведется по обычным правилам Windows.
Применение функции без ввода ее в ячейку
При необходимости можно воспользоваться стандартной функцией Excel таким образом, что вводить ее в ячейку будет не обязательно. Для этого достаточно запустить следующий макрос (листинг 3.14).
Sub Func()
[a1] = Application.Sum([B5:B10])
End Sub
Результатом работы данного макроса будет сумма диапазона ячеек В5:В10, отображаемая в ячейке А1.
Скрытие строк и столбцов от посторонних
Существует несколько небольших макросов, с помощью которых можно скрывать строки и столбцы. С некоторыми из таких макросов мы познакомимся в данном разделе.
Чтобы скрыть строку под определенным номером, можно применить следующий макрос (листинг 3.15).
Sub HideString()
Rows(2).Hidden = True
End Sub
В результате применения этого макроса будет скрыта строка 2.
Можно использовать также такой макрос (листинг 3.16).
Sub HideStrings()
Rows(«3:5»).Hidden = True
End Sub
После его выполнения будут скрыты строки 3, 4 и 5.
Чтобы вновь отобразить скрытую строку (или строки), необходимо в соответствующих макросах изменить значение True на False, после чего запустить их на выполнение.