Массивы в VBA
Массивы в VBA
Массивы используются в большинстве языков программирования и VBA, как язык высокого уровня, тоже не мог обойтись без них. Данный материал расскажет о создании массивов, их применении, а так же вы здесь найдете примеры использования массивов. Для начала разберем синтаксис определения массивов.
Объявление массивов
Пример 1. Создание (объявление) одномерного массива выполняется, так:
В данном примере объявляются: одномерный массив Arr1, содержащий ячейки с 0-й до 10-й типа Integer, массив Arr2, содержащий ячейки с 5-й до 10-й типа String и динамический массив Arr3.
Прежде чем использовать динамический массив, его необходимо «инициализировать», т.е. выделить для него необходимую память. Менять размер динамического массива можно много раз в программе, даже в цикле, если хотите. Правда учитывайте, что выделение памяти для массива — ресурсно-затратная операция, поэтому не стоит менять размер массива очень часто, это сильно замедлит программу.
Пример 2. Инициализация динамического массива и изменение его размеров
В данном примере мы сначала с помощью ReDim задали размер динамического массива в 11 элементов (c 0-го по 10-й), а затем снова увеличили размер до 21-го элемента. Кроме того, использовали ключевое слово Preserve — означающее, что нужно сохранить уже имеющиеся элементы с их значениями (без этого ключевого слова массив обнуляется).
Примечание: изменение размеров функцией ReDim возможно только для динамических массивов. Если размер массива был изначально задан, то его размер уже не будет меняться функцией.
Пример 3. Объявление многомерного массива
Arr4 — двумерных массив 11х11 элементов, а массив Arr5 — трехмерный.
Пример 4. Создание массива массивов
В следующем примере массив Arr2 будет содержать элементы другого массива Arr1
Определение нижней и верхней границы массива
Чтобы узнать какой самый наименьший индекс у массива и какой самый максимальный индекс массива, нужно использовать функции LBound для определения нижней границы и UBound для определения верхней границы.
Пример 5. Определение границ массива
Чтобы определить границы многомерных массивов, нужно просто использовать второй параметр функций UBound и LBound.
Задание нижней границы по-умолчанию
Иногда бывает очень не удобно, что VBA начинает нумерацию элементов массивов с нуля (0), это часто может привести к путанице и усложнению кода программы. Для решения этой проблемы есть специальный оператор Option Base , аргумент которого может быть 0 или 1. Указав значение 1, индексация массивов будет начинаться с 1, а не с 0.
Пример 6. Указание нижней границы по-умолчанию.
В данном примере я намеренно использовал процедуру, чтобы показать, что Option Base нужно применять не внутри процедур и функций, а в разделе «Declarations». В результате выполнения процедуры Test будет отображено сообщение с индексом нижней границы массива, т.е. «1».
Примечание: Оператор Option Base так же влияет на функцию Array и не влияет на функцию Split (будут рассмотрены ниже), что означает, что при задании «Option Base 1», функция Array вернет массив с индексацией с 1-цы, а функция Split вернет массив с индексацией с 0.
Запись данных в массивы
Для сохранения каких-либо значений в массив, можно воспользоваться несколькими способами. С помощью примеров, покажу эти способы.
Пример 7. Запись данных в массив в цикле.
Пример 8. Запись заранее известных данных с помощью Array
Функция Array возвращает массив из перечисленных данных типа Variant. При этом, массив, который будет содержать значения, должен быть динамическим, т.е. без указания его размеров и границ.
Пример 9. Получение массива из строки с разделителями
Обход элементов массива
Обычно, массивы используются для хранения большого кол-ва данных, а не 1-2 значений, поэтому чтобы получить все эелементы и использовать их для чего-то, обычно используют циклы. Наиболее удобны в этом плане циклы For и For Each .
Пример 10. Обход элементов массива циклом For.
Пример 11. Обход элементов массива циклом For Each.
Иногда, бывает необходимость работы с массивом внутри других типов циклов, но получение значение элемента, всё-равно в них будет таким же, как и в цикле For, т.е. через индекс элемента.
Как ввести формулу массива в Excel?
Ключевое отличие заключается в том, что при использовании формулы массива, чтобы ввести формулу необходимо ввести клавиши CTRL+SHIFT+ВВОД. В этом случае Excel заключит формулу массива в фигурные скобки — если вы введете фигурные скобки вручную, ваша формула будет преобразована в текстовую строку и не будет работать.
Как в Excel вставить массив?
При помощи формул массива она вся делается в одно движение:
- выделяем диапазон B2:K11.
- вводим формулу =A2:A11*B1:K1.
- жмем Ctrl + Shift + Enter, чтобы Excel воспринял ее как формулу массива
Как вводить формулу массива?
Для ввода формулы массива нажимаем клавишу F2, а затем одновременно — клавиши CTRL + SHIFT + ВВОД.
Чем формула массива отличается от обычной формулы?
В отличие от ввода обычных формул, после ввода формулы массива нужно нажать вместо ENTER комбинацию клавиш CTRL+SHIFT+ENTER (поэтому, иногда, формулы массива также называются формулами CSE — это первые буквы от названия клавиш, используемых для ввода C trl, S hift, E nter). … Строку формул ).
Что такое массив Excel?
В Excel массив – это диапазон ячеек. Ниже приведены несколько примеров. Массивы в Excel бывают двухмерные и одномерные. Одномерные в свою очередь делятся на горизонтальные и вертикальные.
Как выделить массив в Экселе?
Выделение массива в Excel
- Выделить диапазон массива вручную, т. е. с помощью мыши. …
- С помощью диалогового окна Выделить группу ячеек. Для этого выделите любую ячейку, которая принадлежит массиву: …
- При помощи комбинации клавиш Ctrl+/. Для этого выберите любую ячейку массива и нажмите комбинацию.
Как в Экселе задать диапазон чисел?
Динамический диапазон в MS EXCEL
- на вкладке Формулы в группе Определенные имена выберите команду Присвоить имя;
- в поле Имя введите: Месяц;
- в поле Область выберите лист Книга;
- в поле Диапазон введите формулу =СМЕЩ(лист1!$ B$5;;;1;СЧЁТЗ(лист1!$ B$5:$I$5))
- нажмите ОК.
Как поставить фигурные скобки в формуле?
Нажмите клавиши CTRL+SHIFT+ВВОД. Формула автоматически вставляется между открывающей и закрывающей фигурными скобками ( < >). Примечание: Вручную вводе фигурных скобок вокруг формулы не преобразует его в формуле массива — необходимо нажать сочетание клавиш Ctrl + Shift + Ввод, чтобы создать формулу массива.
Как работать с массивами в Эксель?
Чтобы вставить такой массив в Excel, необходимо сначала выделить строку, состоящую из 5 ячеек, затем ввести формулу массива и нажать комбинацию клавиш Ctrl+Shift+Enter . Элементы в одномерном вертикальном массиве разделяются двоеточием (:).
Зачем нужна формула массива?
Формула массива – позволяет обработать данные из этого массива. Она может возвращать одно значение либо давать в результате массив (набор) значений.
Как ввести формулу в диапазон ячеек?
Вставляем одинаковые данные в несколько ячеек при помощи Ctrl+Enter
- Выделите все пустые ячейки в столбце.
- Нажмите F2, чтобы отредактировать активную ячейку, и введите в неё что-нибудь: это может быть текст, число или формула. В нашем случае, это текст “_unknown_”.
- Теперь вместо Enter нажмите Ctrl+Enter.
Как работает формула индекс?
Функция ИНДЕКС( ) , английский вариант INDEX(), возвращает значение из диапазона ячеек по номеру строки и столбца. Например, формула =ИНДЕКС(A9:A12;2) вернет значение из ячейки А10 , т. е. из ячейки расположенной во второй строке диапазона.
Как удалить формулу массива?
Удаление формулы массива
- Щелкните ячейку в формуле массива.
- На вкладке Главная в группе Редактирование нажмите кнопку Найти и выделить, а затем выберите команду Перейти.
- Нажмите кнопку Дополнительный.
- Выберите текущий массив.
- Нажмите клавишу DELETE.
Как закрепить массив в формуле?
Для этого в строке формул выделяете ссылку, которую хотите зафиксировать:
Функции VBA и массивы значений
Создание функций с бесконечным количеством аргументов
В предыдущих примерах мы создавали функции, в которых в качестве аргументов выступало одно значение. Но есть функции, у которых в качестве переменной выступает массив значений. Примерами таких функций встроенных в Excel служат функции СУММ, ВПР, МАКС, СРЗНАЧ и так далее. Давайте теперь создадим свою похожую функцию.
Далее приведен код функции, которая суммирует все четные значения.
В первой строке данной функции можно увидеть, что переменной Диапазон мы присвоили тип Range (Диапазон As Range). Таким образом, в качестве аргумента функции мы можем использовать диапазон ячеек. Применим эту функцию на рабочем листе Excel.
Как видно из рисунка, мы не перечисляли каждое значение, а использовали диапазон ячеек A2:A11.
Теперь немного разберем код. Мы использовали цикл For Each — Next. Его задача пройтись по каждой ячейке нашего диапазона. Предварительно мы объявили еще одну переменную r типа Range. Она будет хранить значение каждой ячейки.
Далее идет проверка значения ячейки и если оно кратно 2, то мы суммируем результат во временную переменную S.
В конце, после цикла, мы присваиваем функции СуммаЧетных значение просуммированных элементов S.
Создание функций с неопределенным количеством аргументов
Предыдущая функция имеет недостаток — если вы попытаетесь использовать в качестве переменной несмежный диапазон ячеек, то получите ошибку. Иногда требуется более универсальная функция, так как на старте мы можем не знать количество аргументов, которые будут использоваться. Например, всем известная функция СУММ может принимать неограниченное количество аргументов =СУММ( A1 ; B1:B5 ;1;2;3), функция все рано вернет верный результат.
Вы можете создать свою аналогичную функцию в VBA, указав к последнему (или единственному) аргументу ключевое слово ParamArray.
ParamArray — данный модификатор применяется только к последнему аргументу. Аргумент с данным модификатором всегда должен иметь тип данных Variant и всегда является необязательным, ключевое слов Optional не указывается дополнительно
Теперь давайте создадим функцию, которая может принимать произвольное количество аргументов/ А в качестве результата возвращать всю туже сумму нечетных значений.
Данная функция может принимать любое количество аргументов, однако аргументы не могут быть многомерные, это означает, что мы не можем указывать диапазоны, а должны перечислить все значения или все ячейки. Как это показано на рисунке далее.
Что же делать, если необходимо использовать различные диапазоны ячеек, а не перечислять каждый элемент отдельно. Рассмотрим следующий код функции, который реализует эту возможность.
У нас добавился еще один цикл For Each — Next. Т.е. сначала мы проходим по всем аргументам (диапазонам ячеек), а после проходим по всем ячейкам этих диапазонов.
Этот код тоже далек от идеала: если мы будем использовать вместо диапазонов значения, то получим ошибку. Поэтому если необходимо создать идеальную функцию, например как СУММ (она может обработать любые типы аргументов), то придется потрудится и дополнительно проверять тип аргументов. Но об это уже поговорим в другой раз. Перейдем к созданию еще одного типа функций.
Создание функции, возвращающих массив значений
Надеюсь вы знаете, как использовать формулы массивов в Excel. Эти функции вводятся на рабочий лист Excel с помощью сочетания клавиш Ctrl + Shift + Enter. Сейчас мы создадим функцию, которая возвратит массив значений. Например, выведет нам список всех месяцев.
Если мы введем функцию в одну ячейку, то увидим, что результатом будет только Январь. Чтобы понять как работает функция необходимо выделить 12 ячеек по горизонтали, ввести =СписокМесяцев() и нажать сочетание клавиш Ctrl + Shift + Enter.
Если необходимо вывести список месяцев по вертикали, то можно дополнительно использовать функцию =ТРАНСП(СписокМесяцев()).
Возможно покажется, что функции, возвращающие массив достаточно бесполезны. Однако это не так, да они реже используются на рабочем листе Excel, но я надеюсь что они будут незаменимой вещаю в ваших будущих программах на VBA.
Матрицы в Excel: операции (умножение, деление, сложение, вычитание, транспонирование, нахождение обратной матрицы, определителя)
Программа Microsoft Office Excel позволяет выполнять операции с матрицами с помощью встроенных функций и формул. Рассмотрим основные операции над матрицами:
- умножение и деление матрицы на число;
- сложение, вычитание и умножение матриц;
- транспонирование матрицы;
- нахождение обратной матрицы;
- вычисление определителя.
Введем условные обозначения. Матрица А размерностью i x j — это прямоугольная таблица чисел, состоящая из i строк и j столбцов, аij — элемент матрицы.
Умножение и деление матрицы на число в Excel
Способ 1
Рассмотрим матрицу А размерностью 3х4. Умножим эту матрицу на число k. При умножении матрицы на число получается матрица такой же размерности, что и исходная, при этом каждый элемент матрицы А умножается на число k.
Введем элементы матрицы в диапазон В3:Е5, а число k — в ячейку Н4. В диапазоне К3:N5 вычислим матрицу В, полученную при умножении матрицы А на число k: В=А*k. Для этого введем формулу =B3*$H$4 в ячейку K3, где В3 — элемент а11 матрицы А.
Примечание: адрес ячейки H4 вводим как абсолютную ссылку, чтобы при копировании формулы ссылка не менялась.
С помощью маркера автозаполнения копируем формулу ячейки К3 вниз и вправо на весь диапазон матрицы В.
Таким образом, мы умножили матрицу А в Excel и получим матрицу В.
Для деления матрицы А на число k в ячейку K3 введем формулу =B3/$H$4 и скопируем её на весь диапазон матрицы В.
Способ 2
Этот способ отличается тем, что результат умножения/деления матрицы на число сам является массивом. В этом случае нельзя удалить элемент массива.
Для деления матрицы на число этим способом выделяем диапазон, в котором будет вычислен результат, вводим знак «=», выделяем диапазон, содержащий исходную матрицу А, нажимаем на клавиатуре знак умножить (*) и выделяем ячейку с числом k. После ввода формулы нажимаем сочетание клавиш Ctrl+Shift+Enter, чтобы значениями заполнился весь диапазон.
Для выполнения деления в данном примере в диапазон вводим формулу =B3:E5/H4, т.е. знак «*» меняем на «/».
Сложение и вычитание матриц в Excel
Способ 1
Следует отметить, что складывать и вычитать можно матрицы одинаковой размерности (одинаковое количество строк и столбцов у каждой из матриц). Причем каждый элемент результирующей матрицы С будет равен сумме соответствующих элементов матриц А и В, т.е. сij = аij + bij.
Рассмотрим матрицы А и В размерностью 3х4. Вычислим сумму этих матриц. Для этого в ячейку N3 введем формулу =B3+H3, где B3 и H3 – первые элементы матриц А и В соответственно. При этом формула содержит относительные ссылки (В3 и H3), чтобы при копировании формулы на весь диапазон матрицы С они могли измениться.
С помощью маркера автозаполнения скопируем формулу из ячейки N3 вниз и вправо на весь диапазон матрицы С.
Для вычитания матрицы В из матрицы А (С=А — В) в ячейку N3 введем формулу =B3 — H3 и скопируем её на весь диапазон матрицы С.
Способ 2
Этот способ отличается тем, что результат сложения/вычитания матриц сам является массивом. В этом случае нельзя удалить элемент массива.
Для деления матрицы на число этим способом выделяем диапазон, в котором будет вычислен результат, вводим знак «=», выделяем диапазон, содержащий первую матрицу А, нажимаем на клавиатуре знак сложения (+) и выделяем вторую матрицу В. После ввода формулы нажимаем сочетание клавиш Ctrl+Shift+Enter, чтобы значениями заполнился весь диапазон.
Умножение матриц в Excel
Следует отметить, что умножать матрицы можно только в том случае, если количество столбцов первой матрицы А равно количеству строк второй матрицы В.
Рассмотрим матрицы А размерностью 3х4 и В размерностью 4х2. При умножении этих матриц получится матрица С размерностью 3х2.
Вычислим произведение этих матриц С=А*В с помощью встроенной функции =МУМНОЖ(). Для этого выделим диапазон L3:M5 — в нём будут располагаться элементы матрицы С, полученной в результате умножения. На вкладке Формулы выберем Вставить функцию.
В диалоговом окне Вставка функции выберем Категория Математические — функция МУМНОЖ — ОК.
В диалоговом окне Аргументы функции выберем диапазоны, содержащие матрицы А и В. Для этого напротив массива1 щёлкнем по красной стрелке.
Выделим диапазон, содержащий элементы матрицы А (имя диапазона появится в строке аргументов), и щелкнем по красной стрелке.
Для массива2 выполним те же действия. Щёлкнем по стрелке напротив массива2.
Выделим диапазон, содержащий элементы матрицы В, и щелкнем по красной стрелке.
В диалоговом окне рядом со строками ввода диапазонов матриц появятся элементы матриц, а внизу — элементы матрицы С. После ввода значений нажимаем на клавиатуре сочетание клавиш Shift+Ctrl и щелкаем левой кнопкой мыши по кнопке ОК.
ВАЖНО. Если просто нажать ОК, то программа вычислит значение только первой ячейки диапазона матрицы С.
Мы получим результат умножения матриц А и В.
Мы можем изменить значения ячеек матриц А и В, значения матрицы С поменяются автоматически.
Транспонирование матрицы в Excel
Транспонирование матрицы — операция над матрицей, при которой столбцы заменяются строками с соответствующими номерами. Обозначим транспонированную матрицу А Т .
Пусть дана матрица А размерностью 3х4, с помощью функции =ТРАНСП() вычислим транспонированную матрицу А Т , причем размерность этой матрицы будет 4х3.
Выделим диапазон Н3:J6, в который будут введены значения транспонированной матрицы.
На вкладке Формулы выберем Вставить функцию, выберем категорию Ссылки и массивы — функция ТРАНСП — ОК.
В диалоговом окне Аргументы функции указываем диапазон массива В3:Е5, содержащего элементы матрицы А. Нажимаем на клавиатуре сочетание клавиш Shift+Ctrl и щелкаем левой кнопкой мыши по кнопке ОК.
ВАЖНО. Если просто нажать ОК, то программа вычислит значение только первой ячейки диапазона матрицы А Т .
Нажмите для увеличения
Мы получили транспонированную матрицу.
Нахождение обратной матрицы в Excel
Матрица А -1 называется обратной для матрицы А, если АА -1 =А -1 А=Е, где Е — единичная матрица. Следует отметить, что обратную матрицу можно найти только для квадратной матрицы (одинаковое количество строк и столбцов).
Пусть дана матрица А размерностью 3х3, найдем для неё обратную матрицу с помощью функции =МОБР().
Для этого выделим диапазон G3:I5, который будет содержать элементы обратной матрицы, на вкладке Формулы выберем Вставить функцию.
В диалоговом окне Вставка функции выберем категорию Математические — функция МОБР — ОК.
В диалоговом окне Аргументы функции указываем диапазон массива В3:D5, содержащего элементы матрицы А. Нажимаем на клавиатуре сочетание клавиш Shift+Ctrl и щелкаем левой кнопкой мыши по кнопке ОК.
ВАЖНО. Если просто нажать ОК, то программа вычислит значение только первой ячейки диапазона матрицы А -1 .
Нажмите для увеличения
Мы получили обратную матрицу.
Нахождение определителя матрицы в Excel
Определитель матрицы — это число, которое является важной характеристикой квадратной матрицы.
Как найти определить матрицы в Excel
Пусть дана матрица А размерностью 3х3, вычислим для неё определитель с помощью функции =МОПРЕД().
Для этого выделим ячейку Н4, в ней будет вычислен определитель матрицы, на вкладке Формулы выберем Вставить функцию.
В диалоговом окне Вставка функции выберем категорию Математические — функция МОПРЕД — ОК.
В диалоговом окне Аргументы функции указываем диапазон массива В3:D5, содержащего элементы матрицы А. Нажимаем ОК.
Нажмите для увеличения
Мы вычислили определитель матрицы А.
В заключение обратим внимание на важный момент. Он касается тех операций над матрицами, для которых мы использовали встроенные в программу функции, а в результате получали новую матрицу (умножение матриц, нахождение обратной и транспонированной матриц). В матрице, которая получилась в результате операции, нельзя удалить часть элементов. Т.е. если мы выделим, например, один элемент матрицы и нажмём Del, то программа выдаст предупреждение: Нельзя изменять часть массива.
Нажмите для увеличения
Мы можем удалить только все элементы этой матрицы.
Видеоурок
Кратко об авторе:
Шамарина Татьяна Николаевна — учитель физики, информатики и ИКТ, МКОУ "СОШ", с. Саволенка Юхновского района Калужской области. Автор и преподаватель дистанционных курсов по основам компьютерной грамотности, офисным программам. Автор статей, видеоуроков и разработок.
Спасибо за Вашу оценку. Если хотите, чтобы Ваше имя
стало известно автору, войдите на сайт как пользователь
и нажмите Спасибо еще раз. Ваше имя появится на этой стрнице.
Лабораторная работа по информатике в Microsoft Exsel: ФОРМУЛЫ, ИМЕНА, МАССИВЫ. ФОРМУЛЫ НАД МАССИВАМИ
считая заданными величины x , y , z соответственно в ячейках A3, B3 и C3.
Введем в ячейки A3, B3 и C3 конкретные значения переменных, например 1.2, 3, 1.5 и присвоим этим ячейкам соответственно имена X , Y , Z . Для присвоения имен ячейкам используйте команду Вставка /Имя /Присвоить.
В ячейки A 5, A 6 и A 7 введем поясняющий текст, а в ячейки B 5, B 6 и B 7 соответствующие формулы. Например, для вычисления первого значения можно ввести формулу =4+3* X +2* X ^2+ X ^3. Однако, лучше провести вычисления по схеме Горнера, которая позволяет уменьшить число выполняемых операций. В этом случае формула примет вид =(( X +2)* X +3)* X +4. Предложенные формулы используют в качестве операндов, созданные имена, что делает их похожими на соответствующие математически формулы. При необходимости, в формулах также можно использовать и ссылки на ячейки рабочей таблицы. В этом случае нужная формула имела бы вид = ( A 3+2)* A 3+3)* A 3+4.
Вид электронной таблицы приведен на следующем рисунке.
Задание 2.
На листе создайте таблицу, содержащую сведения о ценах на продукты. Заполните пустые клетки таблицы произвольными ценами, кроме столбца «Среднее значение» и строки «Всего».
Среднее значение
Создайте имена по строкам и столбцам и вычислите среднемесячные цены каждого продукта и всего молочных продуктов по месяцам, используя построенные имена.
Методические указания.
Для вычисления среднего значения используйте функцию СРЗНАЧ.
Задание 3.
На листе запишите формулу для вычисления произведения сумм двух одномерных массивов A и B , т.е. где a i и b i соответствующие элементы массивов, а n – их размерность.
Конкретные данные, например, A = <1.5, 1.23, 1.65, 2.44, 1.44>и B = <2.11, 3.12, 2.14, 2.33, 3.12>введем соответственно в ячейки A 2: E 2 второй и A 3: E 3 третьей строки листа 3 рабочей таблицы. Затем в ячейку A 5 введем формулу: =СУММ(A2:E2)*СУММ(A3:E3). Если диапазону A 2: E 2 присвоить имя А, а диапазону А3:Е3 – имя В, то можно применить формулу: =СУММ(A)*СУММ(В).
В
ид электронной таблицы приведен на рисунке.
Задание 4 .
На листе запишите формулы вычисления сумм S i каждой строки двумерного массива (матрицы) D , т.е. где m – количество строк матрицы, n – количество столбцов
Конкретные данные <d i , j >, i =1,2,…,5, j =1,2,… ,4. (матрица пять строк четыре столбца), введем в ячейки A 1: D 5. Вычислим суммы каждой строки и поместим их в ячейки F 1: F 5. Для этого поместим в ячейку F 1 формулу: =СУММ(A1: D 1), и с помощью маркера автозаполнения скопируем ее в ячейки F 2: F 5. Так как в формуле используется относительная ссылка, то каждая копия настроится на свое местоположение и будет вычисляться сумма соответствующей строки матрицы.
Задание 5.
На листе запишите формулы для вычисления значений элементов массива y i = a i / max ( b i ) , i =1, 2,…, n , где a i и b i элементы соответствующих массивов, а n – их размерность.
Конкретные данные <a i >, i =1,2,…,5; <b i >, i =1,2,…,5, введем соответственно в ячейки A 2: E 2 второй, и A 3: E 3 третьей строки листа 5 рабочей таблицы. Затем в ячейку A 5 введем формулу: = A 2/ МАКС($ A $3:$ E $3) и с помощью маркера автозаполнения скопируем ее в ячейки B 5: F 5. Во втором операнде использована абсолютная ссылка, поэтому на новое местоположение будет настраиваться только первый операнд.
Задание 6 .
На листе задайте произвольный массив чисел. Вычислите сумму положительных чисел и количество отрицательных чисел в этом массиве.
Произвольные данные введем, например, соответственно в ячейки A 2: D 6 листа рабочей таблицы. Для вычисления суммы положительных чисел, в ячейку F 4 введем формулу: =СУММЕСЛИ( A 2: D 6;”>0”; A 2: D 6), а для вычисления количества отрицательных в ячейку F 5 формулу: =СЧЕТЕСЛИ( A 2: D 6;”<0”).
Задание 7 .
На листе заполните произвольный диапазон любыми числами. Найдите сумму чисел больших заданного в ячейке A 1 числа.
Конкретные данные введем, например, соответственно в ячейки A 2: E 2 листа рабочей таблицы. В ячейке А1 запишем произвольное число, а в ячейку A 4 введем формулу: =СУММЕСЛИ( A 2: E 2;”>”& A 1; A 2: E 2).
Задание 8 .
На листе задайте массив чисел и используя соответствующие функции вычислите среднее арифметическое положительных чисел и среднее арифметическое абсолютных величин отрицательных чисел в этом массиве.
Методические указания.
Среднее арифметическое значение положительных чисел равно частному от деления суммы положительных чисел на количество положительных. Для решения задания используйте функции СУММЕСЛИ, СЧЕТЕСЛИ и ABS .
Задание 9 .
На листе создайте произвольный список имен, и присвойте ему имя ИМЕНА. Определите, сколько раз в списке ИМЕНА содержится Ваше имя, заданное в ячейке.
Методические указания.
Используйте функцию СЧЕТЕСЛИ.
Задания для самостоятельной работы
Задание 1С .
Написать формулы, заполнения диапазона А1:A100 равномерно распределенными случайными числами из отрезка [-3,55; 6,55], а диапазона B1:B100 случайными целыми числами из отрезка [-20;80]. Скопировать значения указанных диапазонов в диапазоны D 1: D 100 и E 1: E 100, увеличив вдвое значения второго диапазона.
Для заполнения диапазона А1:A100 равномерно распределенными случайными числами из отрезка [-3,55; 6,55] введите в ячейку A1 формулу =СЛУЧМЕЖДУ(-3,55;6,55) или =СЛЧИС()*9,1-3,55 а затем скопируйте ее в остальные ячейки диапазона.
Для заполнения диапазона B 1: B 100 равномерно распределенными случайными числами из отрезка [-20; 80] введите в ячейку B 1 формулу =СЛУЧМЕЖДУ(-20;80) или =СЛЧИС()*100-20 а затем скопируйте ее в остальные ячейки диапазона.
Для увеличения вдвое значений диапазона B 1: B 100 при копировании в диапазон E 1: E 100 введите в ячейку E 1 формулу = B 1*2 а затем скопируйте ее в остальные ячейки диапазона.
В свободные ячейки написать формулы:
нахождения среднего арифметического построенных диапазонов (используйте функцию СРЗНАЧ());
максимального и минимального элементов, построенных диапазонов (используйте функции МАКС() и МИН());
суммы трех наименьших элементов диапазона А1: B 100 ;
положительного элемента, который чаще всего встречается в диапазоне А1: B 100
Задание 2С .
Для заданного диапазона ячеек рабочего листа Excel.
Написать формулы вычисляющие:
Сумму элементов диапазона, значения которых попадают в отрезок [-5; 10].
Количество элементов диапазона больших некоторого числа, записанного в ячейке рабочей таблицы (например, из ячейки G 1) (используйте функцию СЧЁТЕСЛИ()).
Количество элементов диапазона, значение которых меньше среднего значения элементов диапазона (используйте функции СЧЁТЕСЛИ() и СРЗНАЧ(), см. также пояснения к Заданию 7).