Что такое функция excel
Мастер функций — удобный инструмент для получения полной информации по аргументам
Функции excel — это заранее определенные формулы, команды, которые предназначены для работы с одним или несколькими значениями и возвращением результата. Это команды, которые представляют собой краткую запись наиболее часто использующихся формул. Например, для расчетов в электронных таблицах excel нередко используют сумму, которую можно выразить через арифметический знак «+», а можно с помощью команды =СУММ(). Это простейшая разновидность данной категории. А некоторые из них выполняют сложнейшие вычисления. Интересно, что для расчета суммы существует автосумма. Значок с обозначением этой команды вынесен в панель инструментов программы. Достаточно нажать на него и «протянуть» курсор по ячейкам, которые должны быть сложены, как пользователь получает необходимое число. Разработчики программного обеспечения специально для удобства вынесли автосумму, потому что данную функцию используют чаще прочих.
И простая, и сложная функция состоит из имени и аргумента. Имя буквенно выражает суть операции, а аргумент заключается в скобки и, как правило, является порядком чисел, с которыми происходят вычисления, команды. Если одни функции и вовсе не имеют аргументов, то для других можно задать несколько сразу через разделительный знак точка с запятой. Возвращенное значение называется результатом.
Использование абсолютных и относительных ссылок в Excel
Заполните табличку, так как показано на рисунке:
Описание исходной таблицы. В ячейке A2 находиться актуальный курс евро по отношению к доллару на сегодня. В диапазоне ячеек B2:B4 находятся суммы в долларах. В диапазоне C2:C4 будут находится суммы в евро после конвертации валют. Завтра курс измениться и задача таблички автоматически пересчитать диапазон C2:C4 в зависимости от изменения значения в ячейке A2 (то есть курса евро).
Для решения данной задачи нам нужно ввести формулу в C2: =B2/A2 и скопировать ее во все ячейки диапазона C2:C4. Но здесь возникает проблема. Из предыдущего примера мы знаем, что при копировании относительные ссылки автоматически меняют адреса относительно своего положения. Поэтому возникнет ошибка:
Относительно первого аргумента нас это вполне устраивает. Ведь формула автоматически ссылается на новое значение в столбце ячеек таблицы (суммы в долларах). А вот второй показатель нам нужно зафиксировать на адресе A2. Соответственно нужно менять в формуле относительную ссылку на абсолютную.
Как сделать абсолютную ссылку в Excel? Очень просто нужно поставить символ $ (доллар) перед номером строки или колонки. Или перед тем и тем. Ниже рассмотрим все 3 варианта и определим их отличия.
Наша новая формула должна содержать сразу 2 типа ссылок: абсолютные и относительные.
- В C2 введите уже другую формулу: =B2/A$2. Чтобы изменить ссылки в Excel сделайте двойной щелчок левой кнопкой мышки по ячейке или нажмите клавишу F2 на клавиатуре.
- Скопируйте ее в остальные ячейки диапазона C3:C4.
Описание новой формулы. Символ доллара ($) в адресе ссылок фиксирует адрес в новых скопированных формулах.
Абсолютные, относительные и смешанные ссылки в Excel:
- $A$2 – адрес абсолютной ссылки с фиксацией по колонкам и строкам, как по вертикали, так и по горизонтали.
- $A2 – смешанная ссылка. При копировании фиксируется колонка, а строка изменяется.
- A$2 – смешанная ссылка. При копировании фиксируется строка, а колонка изменяется.
Для сравнения: A2 – это адрес относительный, без фиксации. Во время копирования формул строка (2) и столбец (A) автоматически изменяются на новые адреса относительно расположения скопированной формулы, как по вертикали, так и по горизонтали.
Примечание. В данном примере формула может содержать не только смешанную ссылку, но и абсолютную: =B2/$A$2 результат будет одинаковый. Но в практике часто возникают случаи, когда без смешанных ссылок не обойтись.
Полезный совет. Чтобы не вводить символ доллара ($) вручную, после указания адреса периодически нажимайте клавишу F4 для выбора нужного типа: абсолютный или смешанный. Это быстро и удобно.
Использование абсолютных ссылок в Excel, позволяет создавать формулы, которые при копировании ссылаются на одну и ту же ячейку. Это очень удобно, особенно, когда приходится работать с большим количеством формул. В данном уроке мы узнаем, что же такое абсолютные ссылки, а также научимся использовать их при решении задач в Excel.
В Microsoft Excel часто возникают ситуации, когда необходимо оставить ссылку неизменной при заполнении ячеек. В отличие от относительных ссылок, абсолютные не изменяются при копировании или заполнении. Вы можете воспользоваться абсолютной ссылкой, чтобы сохранить неизменной строку или столбец.
Более подробно об относительных ссылках в Excel Вы можете прочитать в данном уроке.
Формула 1: ВПР
Эта функция дает возможность найти требуемую информацию в таблице, а возвращенный результат вывести в определенную ячейку. Аббревиатура, обозначающая название функции, расшифровывается, как «вертикальный просмотр».
Синтаксис
Это довольно сложная формула, имеющая 4 аргумента, а ее использование имеет множество особенностей.
Синтаксис такой:
=ВПР(искомое_значение;таблица;номер_столбца;)
Давайте более подробно рассмотрим все аргументы:
- Значение, которое ищется.
- Таблица. Необходимо, чтобы было искомое значение, находящееся в первой колонке, а также значение, которое возвращается. Последнее располагается где-угодно. Пользователь может самостоятельно определиться, куда вставлять результат формулы.
- Номер столбца.
- Интервальный просмотр. Если в этом нет необходимости, то можно не приводить значение этого аргумента. Оно являет собой логическое выражение, обозначающее степень точности совпадения, которое должно быть обнаружено функцией. Если указан параметр «Истина», то тогда Excel будет искать самое близкое значение к указанному в качестве искомого. Если же указан параметр «Ложь», то функция будет искать только те значения, которые находятся в первой колонке.
На этом скриншоте мы пробуем с помощью формулы понять, сколько просмотров было осуществлено по запросу «купить планшет».
Как работает функция?
Программа изучает заданный пользователем критерий, после переходит в выделенную ячейку и отображает полученное значение.
С одним условием
Рассмотрим функцию на простом примере:
После проверки ячейки А1 оператор сравнивает ее с числом 70 (100). Это заданное условие. Когда значение больше 50 (130), появляется правдивая надпись «больше 50». Нет – значит, «меньше или равно 130».
Пример посложнее: необходимо из таблицы с баллами определить, кто из студентов сдал зачет, кто – идет на пересдачу. Ориентир – 75 баллов (76 и выше – зачет, 75 и ниже – пересдача).
В первой ячейке с результатом в правом углу есть маркер заполнения – протянуть полученное значение вниз для заполнения всех ячеек.
С несколькими условиями
Обычно в Excel редко решаются задачи с одним условием, и необходимо учитывать несколько вариантов перед принятием решения. В этом случае операторы ЕСЛИ вкладываются друг в друга.
Синтаксис:
=ЕСЛИ(заданный_критерий;значение_если_результат_соответствует_критерию;ЕСЛИ(заданный_критерий;значение_если_результат_соответствует_критерию;значение_если_результат_не_соответствует_критерию))
Здесь проверяется два параметра. Когда первое условие верно, оператор возвращает первый аргумент – ИСТИНУ. Неверно – переходит к проверке второго критерия.
Нужно выяснить, кто из студентов получил «отлично», «хорошо» и «удовлетворительно», учитывая их баллы:
- В выделенную ячейку вписать формулу =ЕСЛИ(B2>90;»Отлично»;ЕСЛИ(B2>75;»Хорошо»;»Удовлетворительно»)) и нажать на кнопку «Enter». Сначала оператор проверит условие B2>90. ИСТИНА – отобразится «отлично», а остальные критерии не обработаются. ЛОЖЬ – проверит следующее условие (B2>75). Если оно будет правдиво, то отобразится «хорошо», а ложно – «удовлетворительно».
- Скопировать формулу в оставшиеся ячейки.
Также формула может иметь вид =ЕСЛИ(B2>90;»Отлично»;ЕСЛИ(B2>75;»Хорошо»;ЕСЛИ(B2>45;»Удовлитворительно»))), где каждый критерий вынесен отдельно.
Можно делать любое количество вложений ЕСЛИ (до 64-х), но рекомендуется использовать до 5-ти, иначе формула будет слишком громоздкой и разобраться в ней будет уже очень сложно.
С несколькими условиями в математических выражениях
Логика такая же, как и в формуле выше, только нужно произвести математическое действие внутри оператора ЕСЛИ.
Есть таблица со стоимостью за единицу продукта, которая меняется в зависимости от его количества.
Цель – вычесть стоимость для любого количества продуктов, введенного в указанную ячейку. Количество – ячейка B8.
Формула для решения данной задачи принимает вид =B8*ЕСЛИ(B8>=101;12;ЕСЛИ(B8>=50;14;ЕСЛИ(B8>=20;16;ЕСЛИ(B8>=11; 18;ЕСЛИ(B8>=1;22;»»))))) или =B8*ЕСЛИ(B8>=101;B6;ЕСЛИ(B8>=50;B5;ЕСЛИ(B8>=20;B4;ЕСЛИ(B8>=11;B3;ЕСЛИ(B8>=1;B2;»»))))).
Было проверено несколько критериев и выполнились различные вычисления в зависимости от того, в какой диапазон суммы входит указанное количество продуктов.
С операторами «и», «или», «не»
Оператор «и» используется для проверки нескольких правдивых или нескольких ложных критериев, «или» – одно условие должно иметь верное или неверное значение, «не» – для убеждения, что данные не соответствуют одному условию.
Синтаксис выглядит так:
=ЕСЛИ(И(один_критерий;второй_критрий);значение_если_результат_соответствует_критерию;значение_если_результат_соответствует_критерию)
=ЕСЛИ(ИЛИ(один_критерий;второй_критрий);значение_если_результат_соответствует_критерию;значение_если_результат_соответствует_критерию)
=ЕСЛИ(НЕ(критерий);значение_если_результат_соответствует_критерию;значение_если_результат_соответствует_критерию)
Операторы «и», «или» теоретически могут проверить до 255 отдельных критериев, но такое количество сложно создавать, тестировать и изменять, поэтому лучше использовать до 5-ти. А «нет» – только один критерий.
Для проверки ячейки на наличие символов
Иногда нужно проверить ячейку, пустая она или нет. Требуется это для того, чтобы формула не отображала результат при отсутствии входного значения.
Пустые двойные кавычки в формуле означают «ничего». То есть: если в A2 нет символов, программа выводит текст «пустая», в противном случае будет «не пустая».
Для проверки ячейки ЕСЛИ часто используется в одной формуле c функцией ЕПУСТО (вместо пустых двойных кавычек).
Когда один из аргументов не вписан в формулу
Второй аргумент можно не вводить, когда интересующий критерий не выполняется, но тогда результат будет отображаться некрасиво.
Как вариант – можно вставить в ячейку пустое значение в виде двойных кавычек.
И все-таки лучше использовать оба аргумента.
Округление чисел с помощью функций
Функции программы позволяют произвести точное округление любого дробного числа в большую или меньшую сторону.
А полученное значение можно использовать при расчетах в других формулах.
Округление числа осуществляется с помощью формулы «ОКРУГЛВВЕРХ». Для этого нужно заполнить ячейку.
Первый аргумент – 76,375, а второй – 0.
Округление числа с помощью формулы
В данном случае округление числа произошло в большую сторону. Чтобы округлить значение в меньшую сторону, следует выбрать функцию «ОКРУГЛВНИЗ».
Округление происходит до целого числа. В нашем случае до 77 или 76.
Функции и формулы в программе Excel помогают упростить любые вычисления. С помощью электронной таблицы можно выполнить задания по высшей математике.
Наиболее активно программу используют проектировщики, предприниматели, а также студенты.
https://youtube.com/watch?v=OH020hnCWs8
Функция Excel ЕСЛИМН
Функция Эксель ЕСЛИ в целом хорошо справляется со своими задачами. Но вариант, когда нужно записывать длинную цепочку условий не очень приятный, т.к., во-первых, написать с первого раза не всегда получается (то условие укажешь неверно, то скобку не закроешь); во-вторых, разобраться при необходимости в такой формуле может быть непросто, особенно, когда условий много, а сами расчеты сложные.
В MS Excel 2016 появилась функция ЕСЛИМН, ради которой и написана вся эта статья. Это та же ЕСЛИ, только заточенная специально для проверки множества условий. Теперь не нужно сто раз писать ЕСЛИ и считать открытые скобки. Достаточно перечислить условия и в конце закрыть одну скобку.
Работает следующим образом. Возьмем пример выше и воспользуемся новой формулой Excel ЕСЛИМН.
Как видно, запись формулы выглядит гораздо проще и понятнее.
Стоит обратить внимание на следующее. Условия по-прежнему перечисляем в правильном порядке, чтобы не произошло ненужного перекрытия диапазонов. Последнее альтернативное условие, в отличие от обычной ЕСЛИ, также должно быть обязательно указано
В ЕСЛИ задается только альтернативное значение, которое наступает, если не выполняется ни одно из перечисленных условий. Здесь же нужно указать само условие, которое в нашем случае было бы B2>=1. Однако этого можно избежать, если в поле с условием написать ИСТИНА, указывая тем самым, что, если не выполняются ранее перечисленные условия, наступает ИСТИНА и возвращается последнее альтернативное значение
Последнее альтернативное условие, в отличие от обычной ЕСЛИ, также должно быть обязательно указано. В ЕСЛИ задается только альтернативное значение, которое наступает, если не выполняется ни одно из перечисленных условий. Здесь же нужно указать само условие, которое в нашем случае было бы B2>=1. Однако этого можно избежать, если в поле с условием написать ИСТИНА, указывая тем самым, что, если не выполняются ранее перечисленные условия, наступает ИСТИНА и возвращается последнее альтернативное значение.
Теперь вы знаете, как пользоваться функцией ЕСЛИ в Excel, а также ее более современным вариантом для множества условий ЕСЛИМН.
Комбинированные формулы
Диапазон ячеек в программе указывается с помощью заданных координат первого и последнего значения. В формуле они разделяются знаком «:».
Кроме того, Excel имеет широкие возможности, поэтому функции здесь можно комбинировать любым способом.
Если нужно найти сумму трех чисел и умножить сумму на коэффициенты 1,4 или 1,5, исходя из того, меньше ли итог числа 90 или больше.
Задача решается в программе с помощью одной формулы, которая соединяет несколько функций и выглядит следующим образом:
=ЕСЛИ(СУММ(А1:С1)<90;СУММ(А1:С1)*1,4;СУММ(А1:С1)*1,5).
Решение задачи с помощью комбинированной формулы
В примере задействованы две функции – ЕСЛИ и СУММ. Первая обладает тремя аргументами:
- условие;
- верно;
- неверно.
В задаче – несколько условий.
Во-первых, сумма ячеек в диапазоне А1:С1 меньше 90.
В случае выполнения условия, что сумма диапазона ячеек будет составлять 88, то программа выполнит указанное действие во 2-ом аргументе функции «ЕСЛИ», а именно в СУММ(А1:С3)*1,4.
Если в данном случае происходит превышение числа 90, то программа вычислит третью функцию – СУММ(А1:С1)*1,5.
Комбинированные формулы активно применяются для вычисления сложных функций. При этом количество их в одной формуле может достигать 10 и более.
Чтобы научиться выполнять разнообразные расчеты и использовать программу Excel со всеми ее возможностями, можно использовать самоучитель, который можно приобрести или найти на интернет-ресурсах.
Функции ИНДЕКС и ПОИСКПОЗ в Excel и примеры их использования
двумя полезными функциями месяц и типИНДЕКС которой соответствует искомому чисел ближайшее к-1в качестве значения может быть использован таком случае напишем
Просматриваемый массив. Т.к. мы будет видеть, чтоРезультат таковой другими функциями. ИНДЕКС используется область 1. скобки . ЕслиДанные опущен, аргумент «номер_столбца» Microsoft Excel – товара, получить объемвозвращает содержимое ячейки, значению. Т.е. данная правильному., результатом будет наименьшее аргумента другими функциями, такими
Пример использования функций ИНДЕКС и ПОИСКПОЗ
два нуля. ищем по артикулу, это за товар,=ИНДЕКС(A2:C6;2;3) В зависимости от Все указанные здесь вы попытаетесь ввести
Яблоки является обязательным.ПОИСКПОЗ продаж. которая находится на функция возвращает неФункция значение, которое большеmatch_type какСкачать примеры использования функций значит, выделяем столбец
какой клиент егоПересечение второй строки и формулы значение, возвращаемое области должны находиться их вручную, ExcelЛимоныНомер_столбцаиПускай ячейка C15 содержит пересечении заданных строки само содержимое, аABS искомого или эквивалентное(тип_сопоставления), чтобы выполнитьINDEX ИНДЕКС и ПОИСКПОЗ артикулов вместе с приобрел, сколько было третьего столбца в функцией ИНДЕКС, может на одном листе. отобразит формулу как
Бананы — необязательный аргумент.ИНДЕКС указанный нами месяц, и столбца. Например, его местоположение ввозвращает модуль разницы ему. В нашем
поиск точного совпадения.(ИНДЕКС) илиПолучили простейшую формулу, помогающую шапкой. Фиксируем F4. куплено и по диапазоне A2:C6, т. е.
использоваться как ссылка Если указать области, текст. Если приГруши Выбирает столбец в, разобрали возможности на например, на рисунке ниже массиве данных. между каждым угаданным примере искомое значение Если требуется найтиVLOOKUP
вывести максимальное значениеТип сопоставления. Excel предлагает
какой общей стоимости. содержимое ячейки C3. или как значение. находящиеся на разных вводе формулы неФормула
массиве, из которого простых примерах, аМай формула возвращает значениеНапример, на рисунке ниже
и правильным числами. равно 54. Поскольку точное совпадение текстовой(ВПР). Например: из массива. Протянем три типа сопоставления: Сделать это поможет38 Например, формула ЯЧЕЙКА(«ширина»;ИНДЕКС(A1:B2;1;2)) листах, произойдет ошибка нажать клавиши CTRL+SHIFT+ВВОД,
Описание требуется возвратить значение. также посмотрели их. А ячейка C16 из диапазона A1:C4, формула вернет числоФункция такого значения нет строки, то вНайти положение элемента в ее вправо, получив больше, меньше и
функция ИНДЕКС совместно=ИНДЕКС((A1:C6;A8:C11);2;2;2) эквивалентна формуле ЯЧЕЙКА(«ширина»;B1). #ЗНАЧ! Если необходимо она возвратит ошибкуРезультат Если аргумент «номер_столбца» совместное использование. Надеюсь, — тип товара, которое находится на5MIN в списке баллов,
искомом значении допускается
Поиск индекса максимального числа массива в Excel
несортированном списке. аналогичную информацию по точное совпадение. У с ПОИСКПОЗ.Пересечение второй строки и Функция ЯЧЕЙКА использует использовать диапазоны, находящиеся #ЗНАЧ!
=ИНДЕКС(A2:B3;2;2) опущен, аргумент «номер_строки» что данный урок например,
пересечении 3 строки, поскольку имя «Дарья»(МИН) находит наименьшую то возвращается элемент, использовать символы подстановки.Использовать вместе с цене и сумме.
нас конкретный артикул,Для начала создадим выпадающий второго столбца во значение, возвращаемое функцией на разных листах,К началу страницыЗначение ячейки на пересечении
является обязательным. Вам пригодился. Оставайтесь
Овощи и 2 столбца. находится в пятой из разниц. соответствующий значению 60.В следующем примере, чтобы
Пример 2. Использование вложенной функции IF (ЕСЛИ) для проверки условия выражения
Функция может принимать до 64 условий одновременно. Несмотря на то, что создавать длинные вложенные функции нецелесообразно, то в редких случаях вы можете создать формулу, которая множество условий последовательно.
В приведенном ниже примере мы проверяем два условия.
- Первое условие проверяет, сумму баллов не меньше ли она чем 35 баллов. Если это ИСТИНА, то функция вернет “Не сдал”;
- В случае, если первое условие — ЛОЖЬ, и сумма баллов больше 35, то функция проверяет второе условие. В случае если сумма баллов больше или равна 75. Если это правда, то функция возвращает значение “Отлично”, в других случаях функция возвращает “Сдал”.
Пример 3. Вычисляем сумму комиссии с продаж с помощью функции IF (ЕСЛИ) в Excel
Функция позволяет выполнять вычисления с числами. Хороший пример использования — расчет комиссии продаж для торгового представителя.
В приведенном ниже примере, торговый представитель по продажам:
- не получает комиссионных, если объем продаж меньше 50 тыс;
- получает комиссию в размере 2%, если продажи между 50-100 тыс
- получает 4% комиссионных, если объем продаж превышает 100 тыс.
Рассчитать размер комиссионных для торгового агента можно по следующей формуле:
В формуле, использованной в примере выше, вычисление суммы комиссионных выполняется в самой функции ЕСЛИ. Если объем продаж находится между 50-100K, то формула возвращает B2 * 2%, что составляет 2% комиссии в зависимости от объема продажи.
Больше лайфхаков в нашем Telegram Подписаться
Пример 4. Используем логические операторы (AND/OR) (И/ИЛИ) в функции IF (ЕСЛИ) в Excel
Вы можете использовать логические операторы (AND/OR) (И/ИЛИ) внутри функции для одновременного тестирования нескольких условий.
Например, предположим, что вы должны выбрать студентов для стипендий, основываясь на оценках и посещаемости. В приведенном ниже примере учащийся имеет право на участие только в том случае, если он набрал более 80 баллов и имеет посещаемость более 80%.
Вы можете использовать функцию AND (И) вместе с функцией IF (ЕСЛИ), чтобы сначала проверить, выполняются ли оба эти условия или нет. Если условия соблюдены, функция возвращает “Имеет право”, в противном случае она возвращает “Не имеет право”.
Формула для этого расчета:
Пример 5. Преобразуем ошибки в значения “0” с помощью функции IF (ЕСЛИ)
С помощью этой функции вы также можете убирать ячейки содержащие ошибки. Вы можете преобразовать значения ошибок в пробелы или нули или любое другое значение.
Формула для преобразования ошибок в ячейках следующая:
Формула возвращает “0”, в случае если в ячейке есть ошибка, иначе она возвращает значение ячейки.
ПРИМЕЧАНИЕ. Если вы используете Excel 2007 или версии после него, вы также можете использовать функцию IFERROR для этого.
Точно так же вы можете обрабатывать пустые ячейки. В случае пустых ячеек используйте функцию ISBLANK, на примере ниже:
Больше лайфхаков в нашем ВК
Функция ВПР
С помощью функции ВПР можно извлечь необходимую информацию из таблиц. Сущность вертикального просмотра заключается в поиске значения в крайнем левом столбце заданного диапазона.
После чего осуществляется возврат итогового значения из ячейки, которая располагается на пересечении выбранной строчки и столбца.
Вычисление ВПР можно проследить на примере, в котором приведен список из фамилий. Задача – по предложенному номеру найти фамилию.
Применение функции ВПР
Формула показывает, что первым аргументом функции является ячейка С1.
Второй аргумент А1:В10 – это диапазон, в котором осуществляется поиск.
Третий аргумент – это порядковый номер столбца, из которого следует возвратить результат.
Вычисление заданной фамилии с помощью функции ВПР
Кроме того, выполнить поиск фамилии можно даже в том случае, если некоторые порядковые номера пропущены.
Если попробовать найти фамилию из несуществующего номера, то формула не выдаст ошибку, а даст правильный результат.
Поиск фамилии с пропущенными номерами
Объясняется такое явление тем, что функция ВПР обладает четвертым аргументом, с помощью которого можно задать интервальный просмотр.
Он имеет только два значения – «ложь» или «истина». Если аргумент не задается, то он устанавливается по умолчанию в позиции «истина».
Свойство Offset диапазона
У диапазона есть свойство, которое называется Offset. Термин «Offset» относится к отсчету от исходной позиции. Он часто используется в определенных областях программирования. С помощью свойства «Offset» вы можете получить диапазон ячеек того же размера и на определенном расстоянии от текущего диапазона. Это полезно, потому что иногда вы можете выбрать диапазон на основе определенного условия. Например, на скриншоте ниже есть столбец для каждого дня недели. Учитывая номер дня (т.е. понедельник = 1, вторник = 2 и т.д.). Нам нужно записать значение в правильный столбец.
Сначала мы попытаемся сделать это без использования Offset.
' Это Sub тесты с разными значениями Sub TestSelect() ' Понедельник SetValueSelect 1, 111.21 ' Среда SetValueSelect 3, 456.99 ' Пятница SetValueSelect 5, 432.25 ' Воскресение SetValueSelect 7, 710.17 End Sub ' Записывает значение в столбец на основе дня Public Sub SetValueSelect(lDay As Long, lValue As Currency) Select Case lDay Case 1: Sheet1.Range("H3").Value2 = lValue Case 2: Sheet1.Range("I3").Value2 = lValue Case 3: Sheet1.Range("J3").Value2 = lValue Case 4: Sheet1.Range("K3").Value2 = lValue Case 5: Sheet1.Range("L3").Value2 = lValue Case 6: Sheet1.Range("M3").Value2 = lValue Case 7: Sheet1.Range("N3").Value2 = lValue End Select End Sub
Как видно из примера, нам нужно добавить строку для каждого возможного варианта. Это не идеальная ситуация. Использование свойства Offset обеспечивает более чистое решение.
' Это Sub тесты с разными значениями Sub TestOffset() DayOffSet 1, 111.01 DayOffSet 3, 456.99 DayOffSet 5, 432.25 DayOffSet 7, 710.17 End Sub Public Sub DayOffSet(lDay As Long, lValue As Currency) ' Мы используем значение дня с Offset, чтобы указать правильный столбец Sheet1.Range("G3").Offset(, lDay).Value2 = lValue End Sub
Как видите, это решение намного лучше. Если количество дней увеличилось, нам больше не нужно добавлять код. Чтобы Offset был полезен, должна быть какая-то связь между позициями ячеек. Если столбцы Day в приведенном выше примере были случайными, мы не могли бы использовать Offset. Мы должны были бы использовать первое решение.
Следует иметь в виду, что Offset сохраняет размер диапазона. Итак .Range («A1:A3»).Offset (1,1) возвращает диапазон B2:B4. Ниже приведены еще несколько примеров использования Offset.
Sub IspOffset() ' Запись в В2 - без Offset Sheet1.Range("B2").Offset().Value2 = "Ячейка B2" ' Написать в C2 - 1 столбец справа Sheet1.Range("B2").Offset(, 1).Value2 = "Ячейка C2" ' Написать в B3 - 1 строка вниз Sheet1.Range("B2").Offset(1).Value2 = "Ячейка B3" ' Запись в C3 - 1 столбец справа и 1 строка вниз Sheet1.Range("B2").Offset(1, 1).Value2 = "Ячейка C3" ' Написать в A1 - 1 столбец слева и 1 строка вверх Sheet1.Range("B2").Offset(-1, -1).Value2 = "Ячейка A1" ' Запись в диапазон E3: G13 - 1 столбец справа и 1 строка вниз Sheet1.Range("D2:F12").Offset(1, 1).Value2 = "Ячейки E3:G13" End Sub
Относительные ссылки в Excel
По умолчанию, все ссылки в Excel относительные. Когда вы копируете ссылку из одной ячейки в другую, она автоматически изменяется относительно позиции столбца и строки новой ячейки к ячейке, из которой вы скопировали ссылку. Например, если вы скопируете формулу =A1+B1 из строки 1 в строку 2, то формула изменится на =A2+B2. Относительные ссылки полезны в том случае, когда нам нужно повторить один и тот же расчет на несколько столбцов и строк.
Как создать и скопировать формулу с относительными ссылками
На примере ниже мы хотим создать формулу, которая поможет в калькуляции итогового счета за заказ в ресторане. Мы хотим в колонке «Итог» рассчитать сумму к оплате за каждое блюдо, в зависимости от его стоимости за единицу и количества. Для этого, мы создадим одну формулу с относительной ссылкой и скопируем ее на все строки таблицы. Для этого проделаем следующие шаги:
Выделим первую ячейку, в столбце «Итог» в которой будет создана наша формула:
- Вставим в ячейку D2 формулу, которая перемножает цену за блюдо и количество: =B2*C2.
- Нажмите клавишу «Enter» на клавиатуре. Формула произведет расчет и его результат вы увидите в ячейке D2.
Зажав левую клавишу мыши, протяните ячейку D2 за правый нижний угол по всему диапазону ячеек D3:D12. Таким образом, вы скопируете формулу из ячейки D2 и перенесете ее на каждую ячейку диапазона.
Для того, чтобы удостовериться, что формулы скопированы правильно, дважды кликните на любой ячейке диапазона, в котором была протянута формула и вы увидите формулу перемножения ячеек.