Главная /
Образование /
Основные принципы и концепции программирования на языке VBA в Excel
Основные принципы и концепции программирования на языке VBA в Excel - ответы на тесты Интуит
Правильные ответы выделены зелёным цветом.
Все ответы: В курсе лекций рассматриваются ключевые принципы программирования на VBA в MS Excel.
Все ответы: В курсе лекций рассматриваются ключевые принципы программирования на VBA в MS Excel.
Смотрите также:
Для того чтобы записать макрос с помощью макрорекодера необходимо выполнить следующую команду:
(1) Сервис-Макрос-Записать
(2) Сервис-Макрос-Начать запись
(3) Сервис-Макрос-Макрорекодер
(4) Сервис-Макрос-Выполнение записи
Как расшифровывается VBA?
(1) Visual Basic for Automation
(2) Visual Basic for Activations
(3) Visual Basic for Applications
(4) Visual Basic for Account
Средство Object Browser предоставляет возможность
(1) просмотра структуры модуля
(2) пошагового просмотра процедуры
(3) просмотра результата выполнения процедуры
(4) просмотра процедур
(5) просмотра методов и свойств объектов приложения
Оператор объявления переменных
Dim
(1) обязательно записывается сразу после заголовка процедур
(2) может располагаться в любом месте процедуры
(3) обязательно записывается в начале модуля
(4) может располагаться в любом месте процедуры, но обязательно перед используемой переменной
В результате выполнения оператора
Х=5/5^2/5
переменной Х
присвоится значение:
(1) 0,25
(2) 1
(3) 25
(4) 0,04
Какой из условных операторов записан корректно?
(1)
IF salary <9000 Then social=salary*0.2 Endif
(2)
IF salary <9000
Then social=salary*0.2
Endif
(3)
IF salary <9000 Then
social=salary*0.2 Endif
(4)
IF salary <9000 Then social=salary*0.2
Ключевое слово
Private
перед именем процедуры определяет, что процедура
(1) доступна во всех модулях текущего проекта
(2) доступна только в том модуле, в котором она объявлена
(3) не доступна вне текущего проекта
(4) доступна во всех модулях открытых проектов
Отметьте оператор, который устанавливает количество листов во вновь создаваемой рабочей книге равным 12
(1)
Application.SheetsInNewWorkbook = 12
(2)
Application.Workbooks.Worksheets.Count = 12
(3)
Workbooks.Add SheetsInNewWorkbook = 12
(4)
Application.Workbooks.Sheets.Count = 12
(5)
Application.Sheets.Count = 12
Макрос, записываемый в режиме макрорекордера,
(1) сохраняется всегда в текущей рабочей книге
(2) может сохраняться в любой закрытой рабочей книге
(3) обязательно в новой рабочей книге
(4) может сохраняться в личной книге макросов
Какое из перечисленных окон есть в редакторе VBA?
(1) окно программы (Code)
(2) окно рабочей книги(Worksheet)
(3) окно модулей(Modules)
(4) окно с перечнем процедур (Procedure), записанных в VBA
Получение подсказки по оператору языка осуществляется нажатием клавиши F1
(1) только после полного выделения оператора
(2) если мигающий курсор стоит в любом месте названия оператора
(3) если выделена только первая буква оператора
(4) если выделена большая часть соответствующего оператора
Если переменная имеет тип
String
(символьная переменная), то максимальный размер текста, который можно сохранить в этой переменной:
(1) 256 символов
(2) 64000 символов
(3) 1024 символов
(4) 231 символов
(5) 232 символов
Как правильно записать выражение "операнд X равен или больше операнда Y ":
(1)
X>=Y
(2)
X=>Y
(3)
X<=Y
(4)
X=<Y
Для значений переменной
Select Case i
Case 1, 3, 5
s = s + i
Case 2, 4, 6
s = s - i
End Select
Значение переменной
i
, изменяющихся от -7 до 7 с шагом 1 выполняется оператор
s
не меняется, если
(1) значение
i
положительно
(2)
i=7
(3) значение
i
четно
(4) значение
i
нечетно После выполнения вызванной процедуры возврат происходит
(1) к началу вызывающей процедуры
(2) к команде, следующей за вызовом процедуры
(3) к первой процедуре модуля
(4) при вызове процедуры определяется команда возврата из процедуры
Отметьте некорректный оператор
(1)
Sheets(1).Select
(2)
Sheets("Лист1").Select
(3)
ActiveSheet.Cells.Select
(4)
ActiveCell.Sheets.Select
Ссылки на ячейки с данными записываются при записи макроса с помощью макрорекодера в стиле
(1) R1C1
(2) A1
(3) $A$1
(4) A$1
(5) $A1
Переход на процедурный лист любого объекта проекта выполняется
(1) нажатием клавиши F6 при выделенном объекте проекта
(2) нажатием клавиши Shift+F7 при выделенном объекте проекта
(3) двойным щелчком на выбранный объект проекта
(4) нажатием клавиши F8 при выделенном объекте проекта
Окно локальных переменных Locals Window
(1) отображает значения только локальных переменных текущего проекта
(2) отображает значения только локальных переменных текущей процедуры
(3) отображает значения всех переменных всех процедур модуля, содержащего выполняемую процедуру
Preserve
- ключевое слово, позволяющее
(1) переопределить существующие элементы массива
(2) сохранить существующие элементы массива
(3) перезаписать существующие элементы массива
(4) поменять индексы массива местами
Как записать с помощью логических операторов
OR
или AND
проверку условия: F
меньше 800, но больше 500?
(1)
F<500 AND F>800
(2)
F>500 OR F<800
(3)
F<500 OR F>800
(4)
F>500 AND F<800
Какой из операторов цикла
Do While…Loop
выполнится только один раз?
(1)
Counter = 20
Do While Counter <= 20
Counter = Counter + 1
Loop
(2)
Counter = 0
Do While Counter < 20
Counter = Counter + 1
Loop
(3)
Counter = 20
Do While Counter < 20
Counter = Counter + 1
Loop
(4)
Counter = 20
Do While Counter < =20
Counter = Counter - 1
Loop
Функция
String(2, "aква")
возвращает
(1) "aквааква" (повторяет 2 раза строку);
(2) "aaкквваа" (повторяет дважды каждый символ строки)
(3) "аа" (повторяет первый символ строки 2 раза)
(4) "к" (выделяет 2-й символ)
Отметьте правильное утверждение
(1)
ActiveWorkbook.Colors(15) = RGB(0,255,0)
устанавливает зеленый цвет 15-го элемента палитры цветов активной рабочей книги
(2)
ActiveWorksheet.Colors(15) = RGB(0,255,0)
устанавливает зеленый цвет 15-го элемента палитры цветов активного рабочего листа
(3)
ActiveCell.Colors(15) = RGB(0,255,0)
устанавливает зеленый цвет 15-го элемента палитры цветов активной ячейки
(4) изменить палитру цветов нельзя. Можно изменить только цвет конкретного объекта, например, ячейки, рамки или автофигуры
Для привязки макроса к графическому объекту необходимо:
(1) нажать функциональные клавиши Alt+F8 и затем набрать имя макроса
(2) нажать функциональные клавиши Ctrl+Shift и затем набрать имя макроса
(3) нажать функциональные клавиши Alt+Shift и затем набрать имя макроса
(4) установиться на имя макроса в списке макросов и из контекстного меню выбрать графический объект
(5) выполнить команду Назначить макрос из контекстного меню активного графического объекта
В VBA возможны следующие режимы работы с программой
(1) режим прерывания программы
(2) режим копирования программы
(3) режим записи программы
(4) режим перезаписи программы
При выполнении программы по шагам произошло прерывание на операторе
N=M / 0 +M*2
. VB диагностировал, что
(1) в программе обнаружена ошибка компиляции
(2) в программе обнаружена ошибка деления на нуль
(3) в программе обнаружена логическая ошибка
(4) в программе обнаружена синтаксическая ошибка
Область видимости переменной -
(1) это те модули, в которых доступно значение переменной
(2) это те процедуры, в которых доступно значение переменной
(3) это те формы, в которых доступно значение переменной
(4) это те листы рабочей книги, в которых доступно значение переменной
Для ввода значений в процедуре используется оператор
X=InputBox("Введите любое значение")
. Пользователь ввел в диалоговом окне значение 800 и нажал кнопку Cancel. Какое значение получит переменная X
?
(1) 0
(2) 800
(3) пустое значение
(4)
Error
В каком из случаев оператор цикла
Do…Loop Until
не вызывает зацикливание программы?
(1)
Counter = 20
Do
Counter = Counter + 1
Loop Until Counter = False
(2)
Counter = 20
Do
Counter = Counter + 1
Loop Until Counter < 20
(3)
Counter = 20
Do
Counter = Counter - 1
Loop Until Counter < 20
(4)
Counter = 0
Do
Counter = Counter - 1
Loop Until Counter > 20
Значение #21/02/09# переменной типа
Date
сохраняется как
(1) строка "21/02/09", длиной 8 байтов
(2) число типа
Long
со значением 210209
(3) число типа
Single
со значением 210209
(4) число типа
Double
Оператор
Range("A7:B9").Cells(2,1).Activate
(1) выделяет ячейки A7:B9 и активизирует A8
(2) активизирует A8
(3) активизирует B7
(4) выделяет ячейки A7:B9 и активизирует B7
По окончании выполнения макроса, записанного в режиме макрорекордера,
(1) можно отменить записанные и выполненные при помощи макроса команды
(2) нельзя отменить записанные и выполненные при помощи макроса команды
(3) можно отменить только последнюю записанную в макрос и выполненную команду
(4) можно отменить действия, выполненные макросом, при помощи команды Отмена макроса из меню Правка
В процедуре установлены контрольные точки. Произошло прерывание программы на первой контрольной точке.
(1) нажатие кнопки Run продолжает выполнение процедуры до следующей контрольной точки
(2) нажатие кнопки Step Into начинает выполнение процедуры с первого оператора
(3) нажатие кнопки Step Over выполняет следующий после контрольной точки оператор
(4) команда
Clear All Breakpoints
выполняет все оставшиеся операторы процедуры до конца Первый оператор процедуры
A=A+1
. Отметьте неверное утверждение.
(1) возникнет ошибка, если переменная
A
описана как String
(2)
A
получит значение False
, если A
описана как Boolean
(3)
A
получит значение 1, если A
описана как Integer.
(4)
A
получит значение True
, если A
описана как Boolean
Переменные объявлены оператором
Dim X As Byte, S As String
. Переменная X
получила значение 1. Оператор S=X
(1) присвоит
S
значение 1
(2) присвоит
S
значение "1"
(3) присвоит
S
пустое значение
(4) вызовет прерывание программы из-за несоответствия типов переменных в операторе присваивания
Массив описан как
Dim A(-5 to 5)
. Элементы массива имеют значения 0, 1 или 2. Отметьте корректно записанный оператор цикла, обнаруживающий первое нулевое значение в массиве.
(1)
For Each i In A
If i = 0 Then Exit For
Next i
i=-5
(2)
For Each i In A
If A(i) = 0 Then Exit For
Next i
i = -5
(3)
For Each A(i) In A
If A(i) = 0 Then Exit For
Next
(4)
For Each i=-5 to 5
If A(i) = 0 Then Exit For
Next
Отметьте неправильный результат
(1)
Fix(5.72)=5
(2)
Int(-3.666)=-4
(3)
Int(5.72)=5
(4)
Fix(-3.666)=-4
Интервал A5:C11 заполнен единицами. Оператор
MsgBox Range("A6").CurrentRegion.Row
высвечивает
(1) число 5 (номер первой строки интервала)
(2) число 7 (количество строк интервала)
(3) число 11 (номер последней строки интервала
(4) число 6 (номер строки ячейки A6)
Структура проекта имеет вид
(1) списка
(2) дерева
(3) таблицы
(4) группы таблиц
При наборе программного кода возникает интерактивная подсказка
(1) если установлена опция
Auto Quick Members
(2) если установлена опция
Auto Quick Info
(3) если установлена опция
Auto Quick Help
(4) если установлена опция
Auto Quick Tips
(5) если установлена опция
Show ToolTips
Массив
(1) это совокупность переменных разных типов
(2) это совокупность переменных одного типа
(3) это совокупность переменных , ничем не отличающихся друг от друга
(4) предполагает обработку каждого элемента отдельно
Как с помощью оператора
Like
записать следующую проверку символьной переменной word
: "В любом месте текста находится буква A, через два символа от которой буква G, при этом буква G не обязательно последняя буква текста"?
(1)
word Like "A??G"
(2)
word Like "*A*G*"
(3)
word Like "*A??G*"
(4)
word Like "A?*G*"
Какой из операторов цикла
For
для вычисления 20!
записан правильно и рассчитывает верный результат?
(1)
f=1
For i = 20 To 1 Step -1
f=f*i
Next i
(2)
f=1
For i = 20 To 1
f=f*i
Next i
(3)
f=1
For i = 1 To 20 Step -1
f=f*i
Next i
(4)
f=1
For i = 0 To 20
f=f*i
Next Step
Процедура-функция
(1) не может иметь необязательные аргументы. Количество аргументов функции всегда фиксировано
(2) может быть вызвана командой Сервис-Макрос-Макросы
(3) может быть использована в правой части оператора присваивания
Оператор
ActiveSheet.Range("A5:B10").Clear
на активном рабочем листе
(1) очищает интервал ячеек
A5:B10
(2) очищает только значения ячеек
A5
и B10
(3) удаляет ячейки
A5:B10
, сдвигая остальные ячейки влево
(4) очищает полностью колонки
A
и B
Процедура может содержать:
(1) только команды, полностью дублирующие команды основного меню Excel
(2) только операторы языка Visual Basic
(3) при использовании макрорекордера команды MS Excel, реализующие начало и конец записи макроса
Остановить запись макроса, выполняемую макрорекодером, можно выполнив команду
(1) Сервис-Макрос-Стоп
(2) Сервис-Макрос-Остановить запись
(3) Сервис-Макрос-Завершить макрос
(4) Сервис-Макрос-Завершить запись
В среду редактора VBA можно перейти
(1) командой Сервис-Надстройка-Редактор Visual Basic
(2) командой Сервис-Макрос-Редактор Visual Basic
(3) командой Сервис-Открыть -Редактор Visual Basic
(4) командой Сервис-Мастер-Редактор Visual Basic
Средство Object Browser доступно
(1) только при активном листе рабочей книги, c которым связана процедура обработки объектов рабочего листа
(2) только в редакторе VB
(3) только в пошаговом режиме отладки процедуры
(4) только при выделении объекта проекта, свойства и методы которого интересуют разработчика
При записи оператора
Dim
в виде Dim i, j as Integer, k, m as Double
объявленные в процедуре переменные имеют следующие типы:
(1)
i - Variant, j - Integer, k - Double, m - Double
(2)
i - Integer, j - Integer, k - Variant, m - Double
(3)
i - Variant, j - Integer, k - Variant, m - Double
Процедура запрашивает ввод числа или даты и высвечивает сообщение о типе введенных данных или о некорректном вводе. Какая из логических конструкций записана правильно?
(1)
If IsDate(A) Then
MsgBox "Дата " & A
ElseIf IsNumeric(A) Then
MsgBox "Число " & A
Else
MsgBox "Некорректный ввод "
End If
(2)
If IsDate(A) Then
MsgBox "Дата " & A
Else IsNumeric(A) Then
MsgBox "Число " & A
Else
MsgBox "Некорректный ввод "
End If
(3)
If IsDate(A) Then MsgBox "Дата " & A
ElseIf IsNumeric(A) Then MsgBox "Число " & A
Else MsgBox "Некорректный ввод "
End If
Ключевое слово
Static
перед именем процедуры определяет, что
(1) процедура постоянно находится в памяти и доступна во всех модулях открытых проектов
(2) все переменные, объявленные в процедуре, сохраняют свое значение при выходе из процедуры
(3) все переменные всех процедур модуля, включающего эту процедуру, сохраняют свои значения, если процедура является первой процедурой модуля
(4) все переменные, объявленные в процедуре, сохраняют свое значение при выходе из процедуры, только если процедура была вызвана процедурой другого модуля
Отметьте оператор, который запрещает обновление экрана во время выполнения программы обработки рабочей книги
MyBook
(1)
Application.DisplayAlerts = False
(2)
Application.ScreenUpdating = False
(3)
Workbooks("MyBook").DisplayAlerts = False
(4)
Workbooks("MyBook").ScreenUpdating = False
Макрос, записываемый в режиме макрорекордера,
(1) сохраняется на модульном листе, имя которого состоит из слова
Module
и порядкового номера модульного листа
(2) сохраняется на процедурном листе, который открыт в Visual Basic во время записи макроса
(3) сохраняется на модульном листе, имя которого всегда
Module1
Окно программы Excel
(1) является общим для всех объектов проекта
(2) содержит только перечень процедур с комментариями для объекта, выбранного в окне проекта
(3) имеет заголовок, указывающий на имя рабочей книги и имя объекта, выбранного в окне проекта
При активном листе диаграмм нажатием клавиши F1
(1) можно получить справку о свойствах и их значениях любого активного объекта диаграммы
(2) можно получить справку о методах, применяемых к объекту
Диаграмма
(3) можно получить справку о свойствах и методах исходного для диаграммы интервала ячеек
(4) справку о свойствах и методах любого объекта активного листа получить нельзя. Необходимо перейти в VBA и затем, выделив объект или записав в процедуре название объекта, свойства и методы которого интересуют разработчика, нажать F1
В каком случае переменная
F
принимает значение True
?
(1)
F=(25>10) And (25<25)
(2)
F=(25>10) And (25>25)
(3)
F=(25>10) And (25<>25)
(4)
F=(25>10) And (25<=25)
s
(1) уменьшается, если значение
i
четное отрицательное
(2) не изменяется, если значение
i
нечетное отрицательное
(3) увеличивается, если значение
i
отрицательно
(4) уменьшается, если значение
i
отрицательно Фактические параметры процедуры общего типа (аргументы) отделяются от имени процедуры
(1) точкой с запятой
(2) запятой
(3) пробелом
(4) тире
Рабочая книга
MyBook
содержит 3 рабочих листа. Оператор Sheets.Add Count:=5
добавляет
(1) 5 рабочих листов перед активным листом
(2) 5 рабочих листов после активного листа
(3) 2 рабочих листа в конец рабочей книги
(4) 2 рабочих листа в начало рабочей книги
Для быстрого запуска макроса можно использовать
(1) Ctrl+ "имя макроса"
(2) Ctrl+Shift+F11
(3) "горячие" клавиши, если они заданы для макроса
(4) быстро запускать макрос нельзя. Можно только выбирать имя макроса в диалоге запуска макроса
Во время выявления любой ошибки происходит прерывание программы,
(1) если установлена опция
Break on Class Errors
(2) если установлена опция
Break on All Errors
(3) если установлена опция
Break on Several Errors
(4) если установлена опция
Break on First Error
(5) если установлена опция
Break on Unhandled Errors
Размерность динамического массива
(1) обязательно определяется при первом же объявлении массива
(2) может переопределяться в любом месте процедуры
(3) может переопределяться, только если массив объявлен в начале модуля перед всеми процедурами
(4) может переопределяться в любом месте процедуры, только если массив объявлен в начале процедуры
Как с помощью оператора
Like
записать следующую проверку символьной переменной word
: "Текст состоит из 5 букв и начинается с буквы Z"?
(1)
word Like "Z*"
(2)
word Like "Z****"
(3)
word Like "Z????"
(4)
word Like "Z?*??"
Операторы цикла
For
рассчитывают сумму нечетных чисел, начиная с единицы. Какой из трех операторов цикла дает результат суммирования, отличный от результата двух других операторов?
(1)
s=0
For i = 0 To 20
i = i + 1
s = s + i
Next i
(2)
s=0
For i = 1 To 20
s = s + i
i = i + 1
Next i
(3)
s = 0
For i = 1 To 20 Step 2
s = s + i
Next i
Аргументы, передаваемые функции,
(1) необязательно заключать в скобки
(2) могут иметь любой тип, необязательно соответствующий описанию параметров
(3) аргументы можно перечислять в любом порядке, если указывать имя параметра и передаваемое значение, разделенные знаками ":="
Отметьте правильное утверждение.
(1) оператор
Worksheets(3).Delete
удаляет рабочий лист с номером 3
(2) оператор
Array(Worksheets).Delete
удаляет все рабочие листы
(3) оператор
Worksheets(3).Delete
удаляет три рабочих листа, начиная с активного В операторе макроса
ActiveCell.FormulaR1C1 = "=R8C2^2"
присутствует ссылка на ячейку в виде R8C2
.Эта ссылка указывает на ячейку
(1) B8, независимо от того, какая ячейка активна
(2) H2, независимо от того, какая ячейка активна
(3) C9, если активна ячейка A1
Процедурный лист, связанный с объектом,
(1) содержит перечень объектов, перечень событий объектов и процедуры обработки событий объектов
(2) не отличается от стандартного модуля
(3) содержит только процедуры. Объект, с которым связана процедура, определяется после выбора процедуры
(4) содержит только список объектов, а список процедур и их тексты высвечиваются только при выборе объекта
Окно контрольных значений Watches Window
(1) может отслеживать значения переменных только активного модуля
(2) может отслеживать значение только одной переменной
(3) может отслеживать значения нескольких переменных
(4) может отслеживать значения только тех переменных, которые участвуют в операторах, помеченных точками
Breakpoint
(5) может отслеживать значения переменных только активной процедуры
У динамического многомерного массива оператором
Redim
при использовании Preserve
можно изменить
(1) только нижнюю границу первого индекса массива
(2) только верхнюю границу последнего индекса массива
(3) только обе границы любого индекса массива одновременно
(4) любую границу любого индекса массива
Как записать с помощью логических операторов
OR
или AND
проверку условия: F
больше 300 или меньше 100?
(1)
F<100 AND F>300
(2)
F>100 OR F<300
(3)
F<100 OR F>300
(4)
F>300 AND F<100
В каком из случаев оператор цикла
Do While …Loop
выполнится хотя бы один раз и не зациклится?
(1)
Counter = 20
Do While Counter <= 20
Counter = Counter + 1
Loop
(2)
Counter = 20
Do While Counter < 20
Counter = Counter - 1
Loop
(3)
Counter = 0
Do While Counter < 20
Counter = Counter - 1
Loop
(4)
Counter = 20
Do While Counter > =20
Counter = Counter + 1
Loop
Функция
Mid("проверка", 2,3)
возвращает
(1) "ров" (со 2 символа 3 символа)
(2) "ов" (с третьего символа 2 символа)
(3) "рк"(с третьего справа 2 символа
(4) "ка" (со второго справа 3 символа)
Оператор
Cells(1, 2).Interior.Color = RGB(100, 100, 100)
устанавливает в ячейке B1
(1) 100% красную заливку
(2) 100% синюю заливку
(3) 100% зеленую заливку
(4) серую заливку
(5) желтую заливку
Создание кнопки на панели инструментов для запуска макроса можно выполнить
(1) командой Сервис-Настройка
(2) командой Сервис-Надстройки
(3) командой Сервис-Макрос
При попытке запустить процедуру
A
высвечивается сообщение об ошибке компиляции в процедуре B
. Чтобы выполнить процедуру A
следует
(1) отключить выполнение всех процедур, кроме процедуры
A
(2) исправить обнаруженную ошибку компиляции в процедуре
B
и снова запустить процедуру A
(3) выделить процедуру
A
в окне программы и нажать кнопку Run
(4) в диалоге сообщения об ошибке компиляции нажать кнопку Cancel
Если в процедуре определена локальная переменная, идентификатор которой совпадает с идентификатором модульной и глобальной переменной, то внутри процедуры
(1) используется глобальная переменная
(2) используется модульная переменная
(3) используется локальная переменная
(4) используется переменная, которая в списке объявления переменных расположена раньше других переменных
Для ввода значений в процедуре используется оператор
X=InputBox("Введите число")
. Пользователь ввел в диалоговом окне значение True
и нажал кнопку Cancel. Какое значение получит переменная X
?
(1) 1
(2)
True
(3) пустое значение
(4)
Error
В каком из случаев оператор цикла
Do Until …Loop
выполнится хотя бы один раз и не зациклится?
(1)
myNum = 20
Do Until myNum = 10
myNum = myNum - 1
Loop
(2)
myNum = 20
Do Until myNum = 10
myNum = myNum + 1
Loop
(3)
myNum = 10
Do Until myNum = 10
myNum = myNum - 1
Loop
(4)
myNum = 20
Do Until myNum = 10
myNum = myNum - 3
Loop
Для преобразования в дату с помощью функции
TimeValue
аргумент time
необходимо записать в виде:
(1) /3:15:27/
(2) !13:15:27!
(3) "13:15:27"
(4) +13:15:27+
Отметьте правильные утверждения
(1)
Worksheets(Array("Лист1", "Лист2")).Activate
выделяет листы и активизирует Лист1
(2)
Worksheets(Array("Лист1", "Лист2")).Select
выделяет листы и активизирует Лист1
(3)
Union(Worksheets(1), Worksheets(2)).Select
выделяет листы и активизирует Лист1
(4)
ActiveSheet.Offset(2).Select
активизирует второй лист по отношению к активному листу Макрос, записанный в режиме макрорекордера,
(1) выполняет действия с объектами только того листа, для которого он был записан
(2) может выполняться для активного листа открытой рабочей книги
(3) может выполняться для любого листа любой закрытой в момент запуска макроса рабочей книги
(4) осуществляет запрос на активизацию листа открытой рабочей книги, для которого макрос будет выполняться, если в рабочей книге более одного листа
Команды меню
(1) File позволяют сохранить рабочую книгу под другим именем
(2) Edit позволяют копировать, выделять, осуществлять поиск текстовых фрагментов
(3) Format позволяют изменить шрифт текста процедур
В режиме прерывания после обнаружения ошибки в процедуру добавлен новый оператор, начиная с которого можно было бы продолжить выполнение программы. Для этого необходимо установить внутрь этого оператора точку вставки и
(1) выполнить команду Set Next Statement из меню Debug
(2) выполнить команду Show Next statement из меню Debug
(3) выполнить команду Run to Cursor из меню Debug
(4) невозможно продолжить выполнение программы со вставленного оператора. Необходимо начать заново выполнение программы
Переменная
Var
описана как Variant.и
при помощи оператора Var="S"
получила значение S
. Какой оператор вызовет ошибку при выполнении процедуры?
(1)
Var=Var+"2"
(2)
Var=Var*"2"
(3)
Var=Var+"T"
(4)
Var=Var & "T"
(5)
Var=Var & "2"
Переменные объявлены оператором
Dim Y As Boolean, S As String
. Переменная Y
получила значение True
. Оператор S=Y
(1) присвоит
S
значение True
(2) присвоит
S
значение "True"
(3) присвоит
S
пустое значение
(4) вызовет прерывание программы из-за несоответствия типов переменных в операторе присваивания
Диапазон ячеек A1:B10 заполняется случайными числами 0 или 1. Отметьте корректно записанный оператор цикла.
(1)
Dim i As Object
For Each i In Range("A1:B10")
i = Int(Rnd() * 2)
Next i
(2)
Dim myrange As Object
Set myrange = Range("A1:B10")
For Each i In myrange
i = Int(Rnd() * 2)
Next i
(3)
Dim i As Object, myrange As Object
Set myrange = Range("A1:B10")
For Each In myrange(i)
i = Int(Rnd() * 2)
Next i
(4)
Dim i As Range, myrange As Object
Set myrange = Range("A1:B10")
For Each Cells In myrange
i = Int(Rnd() * 2)
Next i
Для расчета натурального логарифма в VBA
(1) используется встроенная функция
Ln
(2) необходимо применять табличную функцию в записи
WorksheetFunction.Ln
(3) нет встроенной функции. Необходимо использовать встроенную функцию
Log
и формулу для перехода к логарифму по основанию e
(4) используется встроенная функция
Log
Оператор
Union(Range("A1:J1"), Range("A1:A10")) = "*"
(1) заполняет звездочками первые 10 ячеек первой строки и первые 10 ячеек столбца A
(2) устанавливает звездочку только в ячейку A1
(3) заполняет звездочками интервал A1:J10
Редактор Visual Basic автоматически изменяет написанный разработчиком оператор,
(1) исправляя синтаксические ошибки
(2) исправляя строчную букву на прописную в начале ключевого слова
(3) добавляя пропущенные аргументы функций
(4) исправляя неверно написанные названия объектов приложения
При записи макроса с помощью макрорекодера
(1) в виде команд записываются все действия разработчика
(2) действия разработчика по перемещению внутри таблицы не включаются в записываемый макрос
(3) не записываются действия, создающие графические объекты
Возврат в рабочую книгу MS Excel из редактора VBA выполняется
(1) клавишами Shift+Q
(2) клавишами Alt+W
(3) клавишами Alt +F11 или Alt+Q
(4) клавишами Ctrl+F11 или Ctrl+Q
Средство Object Browser осуществляет поиск компонентов. Найденные компоненты высвечиваются в окне Object Browse
(1) в области Search Text
(2) в области Search Results
(3) в области Classes
(4) в области Detail поочередно, предоставляя возможность их последовательного просмотра
Переменная, объявленная оператором
Dim NEWVAR$
, имеет тип
(1)
Long
(2)
Double
(3)
Currency
(4)
String
Выражение 23 \ 4 имеет значение:
(1) 6
(2) 3
(3) 5
(4) 0
Отметьте верное утверждение
(1) наличие процедур с одинаковыми именами в одном модуле вызывает синтаксическую ошибку
(2) наличие процедур с одинаковыми именами в одном проекте вызывает синтаксическую ошибку
(3) в качестве аргументов процедуре могут быть переданы только переменные, объявленные на модульном уровне
(4) вызываемая процедура должна располагаться только внутри вызывающей процедуры. В противном случае ее текст не будет найден в модуле
Открыты две рабочие книги
Book1
и Book2
. Активна рабочая книга Book2
. Выполняемая процедура расположена на стандартном модульном листе рабочей книги Book1
. Оператор...
(1)
ActiveWorkbook.Close
закрывает рабочую книгу Book1
(2)
ThisWorkbook.Close
закрывает рабочую книгу Book1
(3)
ThisWorkbook.Sheets.Count
возвращает количество листов различных типов рабочей книги Book2
(4)
ActiveWorkbook.Sheets.Count
возвращает количество рабочих листов рабочей книги Book1
Макрос, записываемый в режиме макрорекордера,
(1) всегда сохраняется на процедурном листе, связанном с рабочей книгой
(2) всегда сохраняется на модульном листе
(3) сохраняется на листе с процедурами, выбираемом разработчиком
Окно свойств
(1) содержит имя объекта, выбранного в окне проекта, но не содержит указания на тип объекта
(2) позволяет организовать свойства, упорядочив их по категориям или по алфавиту
(3) содержит поле поиска свойств объекта
В пошаговом режиме выполнения программы можно получить быструю справку
(1) о корректном задании аргументов функции, подведя курсор к названию функции
(2) о свойствах и методах объекта, подведя курсор к его имени
(3) о ключевом слове, используемом в операторе, подведя курсор к этому слову
(4) о значении переменной, подведя курсор к ее идентификатору
Если переменная
B
объявлена как Boolean
, то ошибка выполнения возникнет в операторе
(1)
B=5.3
(2)
B="Not"
(3)
B="False"
(4)
B=Not True
При каком значении переменной
F
результат проверки условия F <>500
равен False
?
(1) при
F
равном 300
(2) при
F
равном 400
(3) при
F
равном 600
(4) при
F
равном 500 Для значений переменной
Select Case i
Case 1, 3, 5
s = s + i
Case 2, 4, 6
s = s - i
Case Else
s=s*i
End Select
Отметьте неверное утверждение.
i
, изменяющихся от -7 до 7 с шагом 1 выполняется оператор
(1) значение переменной
s
не меняется, если значение i
отрицательно
(2) если значение
i
нечетное положительное, то значение s
увеличивается
(3) если значение
i
четное положительное, то значение s
уменьшается
(4) значение переменной равно 0, если значение
i
равно 0 Фактические параметры процедуры общего типа (аргументы) перечисляются через
(1) пробел
(2) запятую
(3) тире
(4) точку с запятой
Для выделения колонок A и,B активного рабочего листа правильным является оператор
(1)
Union(ActiveSheet.Columns(1), ActiveSheet.Columns(2)).Select
(2)
ActiveSheet.Columns(1,2).Select
(3)
ActiveSheet.Columns(array(1,2)).Select
(4)
ActiveSheet.Columns(1).Count(2).Select
Запуск макроса возможен
(1) "горячими" клавишами Alt+Shift+буква лат алфавита, присвоенная макросу во время записи
(2) кнопкой CommandButton панели элементов управления
(3) кнопкой Run панели инструментов Visual Basic
В окне проекта можно
(1) удалять папки и объекты проекта
(2) переименовывать рабочие листы
(3) менять порядок высвечивания папок или объектов
(4) сворачивать папки с объектами проекта
Отметьте неправильные утверждения.
(1) в настройках редактора VB нельзя изменить тип и размер шрифта текста программы
(2) в настройках редактора VB нельзя установить порядок высвечивания процедур - по алфавиту или по категориям, т.е. сначала процедуры общего типа, затем процедуры-функции
(3) в настройках редактора не предусмотрено исключение из процедур операторов, в записи которых имеются синтаксические ошибки
(4) в настройках редактора предусмотрена корректировка кода, связанная с изменением регистра ключевых слов
При объявлении массива оператором
Dim Array(5,6)
его размерность
(1) 5 на 6 элементов
(2) 6 на 7 элементов
(3) 5 на 7 элементов
(4) 6 на 6 элементов
Какое значение переменной
word
возвратит результат TRUE
при использовании оператора word Like "A??[G-L]"
?
(1)
AppGZ
(2)
AppLG
(3)
AppG-L
(4)
AppK
В приведенном фрагменте процедуры рассчитывается произведение чисел из первых 20 натуральных чисел. Как только значение произведения превосходит 100, выполняется принудительный выход из цикла. Каково значение переменной цикла
s = 1
For i = 2 To 20
s = s * i
If s > 100 Then Exit For
Next i
i
после завершения цикла?
(1) 5
(2) 20
(3) 21
(4) 6
Возвращаемое функцией значение
(1) имеет объявленный тип. Несовпадение типов принимающей переменной и возвращаемого значение приводит к ошибке выполнения
(2) может быть использовано в выражении
(3) сохраняется в памяти, для чего автоматически создается новая переменная, имя которой совпадает с именем функции
Оператор
Worksheets("Лист7").Range("A5:B10").CurrentRegion.Delete
на листе с именем Лист7
(1) удаляет ячейки диапазона, включающего в себя интервал A5:B10, сдвигая остальные ячейки рабочего листа влево
(2) очищает интервал ячеек, включающий в себя диапазон A5:B10
(3) очищает диапазон ячеек A5:B10, относительный для предварительно выделенного интервала ячеек
(4) очищает полностью колонки A и B
В операторе макроса
ActiveCell.FormulaR1C1 = "=R[-8]C2^2"
присутствует ссылка на ячейку в виде R[-8]C2
.Эта ссылка указывает на ячейку
(1) B8, независимо от того, какая ячейка активна
(2) H2, независимо от того, какая ячейка активна
(3) B1, если активна ячейка B9
Отметьте правильные утверждения в отношении процедурного листа любого объекта проекта.
(1) имя процедурного листа любого объекта проекта содержит имя объекта с указанием (
Code
)
(2) лист не может содержать никаких процедур, кроме процедур обработки событий того объекта, с которым этот процедурный лист связан
(3) лист может содержать процедуры обработки событий любого объекта проекта
(4) на процедурных листах нельзя описать переменные, являющиеся общими для всех процедур этого листа. Общие переменные можно описывать только в стандартных модулях
Во время прерывания программы значение переменной
A
было равно 5. В окне проверки выполнен оператор A=A+2
. В результате
(1)
A=2
, т.к. A
в окне проверки была автоматически инициализирована в 0
(2)
A=7
, т.к. в окне проверки известно значение переменной A
равное 5
(3)
A=Empty
, т.к. А
не была автоматически инициализирована в окне проверки и, поэтому, имеет пустое значение
(4) произошла ошибка, т.к. переменная
A
неопределенна в окне проверки Функция
Lbound
(1) возвращает индекс первого элемента массива
(2) возвращает индекс последнего элемента массива
(3) устанавливает индекс первого элемента массива в 0
(4) возвращает количество элементов массива
При каком значении переменной
F
результат проверки условия F >=800 Or F <=500
равен False
?
(1)
F=800
(2)
F=500
(3)
F=900
(4)
F=600
В каком случае оператор цикла
Do While …Loop
вызывет зацикливание программы?
(1)
Counter = 0
Do While Counter < 20
Counter = Counter + 1
Loop
(2)
Counter = 20
Do While Counter < 20
Counter = Counter + 1
Loop
(3)
Counter = 0
Do While Counter < 20
Counter = Counter - 1
Loop
(4)
Counter = 20
Do While Counter <= 20
Counter = Counter + 1
Loop
Функция
InStr(5, "не суди да не судим будешь", "не")
возвращает
(1) "судим" (находит "не", начиная с 5-ой позиции, и выделяет следующее слово)
(2) "у" (начиная с найденного "не" выделяет символ в пятой позиции)
(3) 1 (возвращает количество "не", найденных с 5-го символа)
(4) 12 (возвращает позицию "не" при поиске с 5-го символа)
Свойство
ColorIndex
(1) оператор
Cells(1,2).Interior.Colorindex=3
выполняет заливку ячейки B1 цветом, определенным в 3-ем элементе палитры цветов рабочей книги
(2) оператор
Cells(1,2).Interior.Color=ColorIndex(3)
выполняет заливку ячейки B1 цветом, определенным в 3-ем элементе палитры цветов рабочей книги
(3) оператор
Colorindex.Cells(1, 2)=vbYellow
устанавливает желтый цвет для элемента с индексами (1,2) палитры цветов рабочей книги
(4) для задания свойства
Colorindex
можно использовать только функцию RGB
, меняя значения параметров Red
, Green
, Blue
Создание дополнительной строки меню для запуска макроса можно выполнить
(1) командой Сервис-Настройка
(2) командой Сервис-Надстройки
(3) командой Сервис-Макрос
Во время разработки программы можно получить контекстную подсказку
(1) по параметрам используемой функции, метода или свойства
(2) по вставляемому оператору цикла
(3) по выявленной синтаксической ошибке
В программе имеются две процедуры
Proc1
и Proc2
. Процедура Proc1
запрашивает данные и высвечивает результат из переменной User_sum
, а процедура Proc2
получает введенные данные из Proc1
и суммирует их в переменной User_sum
. Переменную User_sum
следует объявить
(1) как локальную в процедуре
Proc2
(2) на уровне модуля, в котором расположены обе процедуры
(3) как статическую в процедуре
Proc2
(4) как статическую в процедуре
Proc1
Переменная
Y
, описанная как Boolean
, в процессе выполнения процедуры получила значение 1. Оператор MsgBox "Y=" & Y
(1) выведет в диалоговое окно
Y=1
(2) выведет в диалоговое окно
Y=True
(3) выведет в диалоговое окно
Y=False
(4) вызовет прерывание программы при попытке вывести значение
Y
из-за несоответствия типа переменной и ее значения Какой из операторов цикла
Do…Loop Until
выполнится только один раз?
(1)
Counter = 20
Do
Counter = Counter + 1
Loop Until Counter = False
(2)
Counter = 20
Do
Counter = Counter + 1
Loop Until Counter < 20
(3)
Counter = 4
Do
Counter = Counter + 1
Loop Until Counter < 20
(4)
Counter = 0
Do
Counter = Counter - 1
Loop Until Counter > 20
Функция
Timer()
возвращает
(1) текущее время компьютера в секундах
(2) временной интервал в секундах от полуночи до текущего времени
(3) временной интервал в секундах от времени включения компьютера до текущего времени
Все приведенные ниже операторы, кроме одного активизируют ячейку E4. Отметьте этот оператор
(1)
ActiveSheet.Cells(4, 5).Select
(2)
Union(Range("e3:F5"), Range("F4:e4")).Activate
(3)
Cells(3, 1).Offset(1, 4).Select
(4)
Range("b2:E6").Range("d3").Select
Во время выполнения макроса, записанного в режиме макрорекордера, запущенного командой Run ,
(1) выполняются все команды макроса с первой до последней
(2) можно отменить очередную выполняемую команду
(3) можно повторить любую выполненную команду для другого объекта (ячейки, рабочего листа и т.п)
Команды меню View
(1) позволяют изменить масштаб изображения текста процедур на экране
(2) позволяют показать на экране любую панель инструментов рабочей книги MS Excel
(3) позволяют перейти к рабочему листу, выбранному в окне проекта
Программа содержит основную процедуру
A
, в которой осуществляется вызов процедуры B
из 5 операторов. Процедура A
выполняется в пошаговом режиме нажатием кнопки Step Into. После выполнения команды вызова процедуры B
(1) каждое нажатие кнопки Step Into будет выполнять очередную команду процедуры
B
(2) первое нажатие кнопки Step Into осуществит возврат из процедуры
B
в процедуру A
(3) второе нажатие кнопки Step Into осуществит возврат из процедуры
B
в процедуру A
(4) первое нажатие кнопки Step Over осуществит возврат из процедуры
B
в процедуру A
Процедура предполагает расчет произведения чисел, вводимых пользователем. Для получения произведения описана переменная
Prod as Single
. В результате вычислений произведение чисел равно нулю. Какая команда инициализации переменных приведет к корректному результату?
(1)
Prod="1"
(2)
Prod=0
(3)
Prod=""
(4)
Prod="0"
Переменные объявлены оператором
Dim X As Byte, S As String
. Переменная X
получила значение 1. В результате выполнения операторов S="": S=S & X
(1)
S
равно "1"
(2)
S
равно " 1"
(3)
S
равно "01"
(4)
S
равно "0""1"
(5) произойдет прерывание программы из-за несоответствия типов переменных во втором операторе присваивания
Отметьте правильные утверждения в отношении приведенного фрагмента процедуры.
Dim i As Range, myrange As Object
Set myrange = Range("A:B")
For Each i In myrange
i = Int(Rnd() * 2)
Next i
(1) тип переменной
myrange
должен быть Range
, а не Object
(2) в ссылке на диапазон ячеек оператора
Set myrange = Range("A:B")
указаны только обозначения столбцов и не указаны номера строк, что является ошибкой
(3) в операторе
i = Int(Rnd() * 2)
обязательно указание свойства value
для переменной i
, т.е оператор следует записать в виде i.value= Int(Rnd() * 2)
(4) в приведенном фрагменте процедуры ошибок нет
Отметьте правильное утверждение
(1) в отличие от табличных функций в списке встроенных математических функций VBA есть функции расчета
Ctg
и Arcctg
(2) нет встроенной функции для округления до любого десятичного разряда. Необходимо использовать табличную функцию округления, например,
ОКРУГЛ.
(3) для вызова табличной функции можно использовать объект
Application
или объект WorksheetFunction
в качестве уточнения, после которого следует указать название функции русскими буквами, например, WorksheetFunction.ПИ()
(4) функция
Rnd
возвращает случайное число типа Single
, большее или равное 0, но меньшее 1
(5) функция
Rnd()
возвращает случайное число 0 или 1 Оператор
Cells(2,3)=5
записывает значение 5
(1) в ячейку B3 активного рабочего листа
(2) в группу ячеек из 3 строк и 2 столбцов,расположенных начиная с активной ячейки
(3) в ячейку C2 активного рабочего листа
(4) в группу ячеек из 2 строк и 3 столбцов,расположенных начиная с активной ячейки
Процедура - это
(1) последовательность команд, начинающаяся с оператора
Procedure
и заканчивающаяся оператором End Proc
(2) последовательность команд, начинающаяся с оператора
Module
и заканчивающаяся оператором End Mod
(3) последовательность команд, начинающаяся с оператора
Sub
и заканчивающаяся оператором End Sub
При переходе в редактор VBA
(1) на экране остается стандартная панель инструментов MS Excel и дополнительно появляется стандартная панель инструментов Visual Basic
(2) появляется основное меню и стандартная панель инструментов Visual Basic
(3) все панели инструментов отключаются, появляется только основное меню Visual Basic
(4) часть стандартной панели инструментов MS Excel заменяется инструментами Visual Basic
Для ввода и высвечивания введенных значений в процедуре используется оператор
MsgBox "Y=" & InputBox("Введите любую букву")
. Пользователь ввел в диалоговом окне значение S
и нажал кнопку Cancel. Что высветится в диалоговом окне?
(1)
Y=Error
(2)
Y=
(3)
Y=S
(4)
Y=0
Переменные объявлены оператором
Dim X As Byte, S As String
. Переменная X
получила значение 1. Отметьте неверное утверждение.
(1) оператор
S=X
присвоит S
значение "1"
(2) оператор
S="X"
присвоит S
значение "X"
(3) оператор
S=X*2
присвоит S
значение "2"
(4) оператор
S=X/2
присвоит S
значение "0,5"
(5) оператор
S=X/2
вызовет прерывание программы из-за несоответствия типов в операторе присваивания