Newcomposers.ru

IT Мир
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Формула склонения в excel

Формула склонения в excel

Функция позволяет выводить фамилию, имя и отчество, заданные в именительном падеже, в форме любого другого падежа.

Область применения:

Функцию удобно использовать для автоматизации формирования документов в MS Excel (или облегчения создания их вручную), где ФИО необходимо указывать не в именительном падеже: различного рода договоры, кассовые ордера, квитанции, акты сверок, приказы, протоколы, доверенности и т.д.

Функция также незаменима, если средствами автоматизации реализовано формирование перечисленных выше документов в приложении MS Word на основании данных, находящихся в таблицах MS Excel.

Примеры использования:

  • в договоре: «в лице руководителя Баранова Петра Вячеславовича«
  • в кассовых ордерах: «выдано Гнатюку Павлу Васильевичу«, «получено от Гриценко Ирины Сергеевны«
  • в доверенности: «доверяю управление траспортным средством Смирницкому Виталию Валерьевичу«
  • в приказе: «назначить на должность Степашову Ольгу Николаевну«
  • в протоколе: «доклад подготовлен Дворжецким Никитой Ивановичем«

Что реализовано:

  • корректно склоняются фамилии со всеми распространенными на территории стран СНГ окончаниями «-ов», «-ев», «-ин», «-ян(ц)», «-ский(-цкий)», «-ской(-цкой)», «-ый», «-ых», «-их», «-ец», «-нко», «-ук», «-юк», «-ич», «-ия» и др.: Павлов, Зиновьев, Гагарин, Петросян, Высоцкий, Трубецкой, Цой, Задорожный, Садовничий, Седых, Долгих, Сосковец, Нестеренко, Гончарук, Данилюк, Рабинович, Данелия, Кваша, Врубель, Козак, Казачок и т.д., а также соответствующие женские фамилии
  • учитываются отличия в склонении мужских и женских фамилий: Ткачу Виктору и Ткач Светлане, Козовцу Антону и Козовец Екатерине
  • корректно обрабатываются составные фамилии: например, Мамин-Сибиряк, Салтыков-Щедрин, Немирович-Данченко, Лебедев-Кумач
  • не склоняются иноязычные фамилии: Галуа, Моруа, Дефо, Дали, Безе, Верди, Гарсиа, Хэмингуэй и пр.
  • успешно обрабатываются отчества с частицами «-оглы», «-кызы», «ибн»: Мамедов Полад Муртуза оглы -> Мамедовым Поладом Муртуза оглы, Гассан Абдурахман ибн Хаттаб -> Гассаном Абдурахманом ибн Хаттабом, Абу Али ибн Сина -> Абу Али ибн Синой
  • автоматически по отчеству определяется пол (мужской/женский) и исходя из этого выбираются соответствующие правила склонения
  • для ситуаций, когда пол автоматически определить затруднительно (отчество иностранное или отсутствует), можно указать пол в качестве параметра функции
  • возможен вывод в сокращенном виде «фамилия + инициалы»: Полозову Н. А., Васильевой А. К., Дворжецкому Е. Е.
  • возможность использования как в виде надстройки (можно использовать во всех файлах на данном рабочем месте), так и в виде кода, внедренного в файл (функция будет работать в данном файле на любом рабочем месте — удобно, если файл, например, отправляется контрагенту)
  • открытый программный код — при желании можно изучать алгоритм либо модифицировать

Как подключить?

Программа представляет собой один файл с названием bdgFIOPropisyu.bas. Для того, чтобы использовать ее в том или ином файле, функцию нужно импортировать в этот файл. Для этого необходимо:

  1. открыть файл MS Excel, в котором требуется использовать функцию
  2. войти в редактор VBA по нажатию горячей клавиши «Alt + F11» или через меню:
    • в MS Excel 2007 — через пункт ленты «Разработчик»:
    • в MS Excel 2003 — через пункт главного меню «Сервис -> Макрос -> Редактор Visual Basic»:
  3. в главном меню редактора VBA выбрать пункт «File» -> «Import file. «:
  4. в появившемся окне выбора файла выбрать файл bdgFIOPropisyu.bas и нажать кнопку «Открыть»:
    В результате этих действий в проводнике проекта в левой части экрана появится ветвь «Modules» (если ее еще не было), раскрыв которою можно увидеть строку bdgFIOPropisyu. А дважды кликнув по этой строке справа можно увидеть текст самой функции ФИОВПадеже:

Все, программный код импортирован и его можно использовать.

Как использовать?

  1. выделите курсором ячейку, в которой хотите поместить результат функции
  2. нажмите на пиктограмму «Вставить функцию» на панели формул:
  3. в появившемся окне Мастера функций выберите категорию «Определенные пользователем», затем в списке выделите название функции «ФИОВПадеже» и нажмите кнопку «ОК»:
  4. и далее в окне Аргументы функций заполните поля: в полях Фамилия, Имя и Отчество укажите ссылки на ячейки с соответствующими значениями, а в поле Падеж укажите число от 1 до 6 (номер падежа от именительного до предложного) и нажмите кнопку «ОК»:

    В результате в выделенной ячейке отобразится результат вычисления функции.

Вот еще несколько примеров ее использования:

Ситуации, когда работа функции может быть некорректной:

Несмотря на то, что ситуаций, когда работа функции может быть неудовлетворительной, ниже перечислено немало, вероятность столкновения с таким ФИО в практической работе достаточно мала, т.к. в 99,9% случаев фамилии, встречающиеся на территории России, склоняются по общим правилам.
Кроме того, следует заметить, что другие алгоритмы и программы также не могут гарантировать корректность результата в 100% случаев — русский язык слишком велик и могуч, чтобы быть описанным набором логических правил (смотрите ниже про влияние положения ударения в слове, происхождения фамилии, про зависимость написания женской формы фамилии от написания мужской формы и т.д.).

  • По правилам русского языка склонение мужских и женских иноязычных фамилий, оканчивающихся на «-а» и «-я», зависит от места ударения в слове и происхождения фамилии.
    Все фамилии, кончающиеся на неударное «-а» после согласных, склоняются: Сенека -> Сенеки, Петрарка -> Петрарки, Сметана -> Сметаны, Куросава -> Куросавы, Глинка -> Глинки, Окуджава -> Окуджавы и др. Склонение фамилий с ударным «-а» на конце зависит от ее происхождения: не склоняются фамилии французского происхождения: Дюмá, Дегá, Фермá, Петипá и т.д., фамилии иного происхождения (из славянских и восточных языков) склоняются: Митта -> Митты, Кваша -> Кваши, Сковорода -> Сковороды, Кочерга -> Кочерги, Хамза -> Хамзы и др.
    Аналогично, французские по происхождению фамилии с ударным «-я» на конце несклоняемы: Золя, Труайя . Все прочие фамилии на «-я» склоняемы: Головня -> Головни, Данелия -> Данилии, Берия -> Берии, Гойя -> Гойи .
    Поскольку программно определить положения ударения и происхождение фамилии невозможно, в алгоритме программы принято допущение, что все подобные фамилии склоняются по общим правилам. Поэтому французские фамилии с ударением на окончании обрабатываются программой некорректно: Дюма -> Дюмы, Золя -> Золи, Петипа -> Петипы .
  • Мужские фамилии, оканчивающиеся на «-ий», «-ый», «-ой», склоняются как прилагательные Горький -> Горького, Блаженный -> Блаженного, Броневой -> Броневого . Исключения составляют случаи, когда фамилия с таким окончанием — нарицательное существительное ( Козодой, Водопой, Гений, Сценарий ) либо иноязычна по происхождению ( Цой, Цхой, Чой ). Так как программно не определить, является ли фамилия подобным исключением, условно принято, что все фамилии с окончаниями «-ий», «-ый», «-ой» склоняются как прилагательные. В подавляющем большинстве случаяв это верно, однако в исключительных случаях с фамилиями-существительными результат функции будет ошибочным: Козодой Яков -> Козодого Якова, Гений Стефан -> Генего Стефана .
    Однако, в виде исключения в алгоритме учтено склонение фамилий с данными окончаниями и длиной менее 5 букв (преимущественно корейских по происхождению): Цой Виктор -> Цоя Виктора .
  • В ряде случаев корректное склонение женской фамилии, оканчивающейся на «-ина», «-ова», возможно только, если известно склонение соответствующей ей мужской фамилии: Жемчужина Людмила, Малина Светлана могут склоняться как в обычной форме: Жемчужина Людмила -> Жемчужиной Людмилы, Малина Светлана -> Малиной Светланы (если соответствующими мужскими фамилиями являются, например, Жемчужин Борис и Малин Олег), так и в форме существительного: Жемчужина Людмила -> Жемчужины Людмилы, Малина Светлана -> Малины Светланы (если мужские формы фамилии, например, Жемчужина Борис и Малина Олег).
    Учесть подобные нюансы в алгоритме невозможно, поэтому все женские фамилии функцией обрабатываются по единым правилам (как прилагательные), что в отдельных случаях может приводить к неверным результатам.
  • Похожая ситуация обстоит с мужскими и женскими фамилиями, оканчивающимися на «-ов(а)», «-ев(а)», «-ин(а)», которые омонимичны нарицательным существительным: Боров, Лев, Филин, Барин, Корова, Сова, Картина, Перина, Старина и т.д. ). Ни по каким формальным признакам программно установить идентичность фамилии и существительного нет возможности, поэтому склонение подобных фамилии по единым общим правилам приводит к некорректным результатам вида: Лев Павел -> Левым Павлом, Филин Сергей -> Филиным Сергеем, Корова Ксения -> Коровой Ксении, Сова Ольга -> Совой Ольги, Картина Алла -> Картиной Аллы .
  • Мужские фамилии, оканчивающиеся на мягкий знак, склоняются: Врубель Михаил -> Врубеля Михаила, Гоголь Николай -> Гоголя Николая и т.д. Однако при склонении окончания таких фамилий зависят от того, существительными какого рода — мужского, женского или среднего — они являются.
    Алгоритмически определить род существительного не представляется возможным, поэтому в тех случаях, когда мужская фамилия является существительным женского или среднего рода, функция будет работать некорректно: Сталь Иван -> Сталя Ивана, Полынь Виктор -> Полыня Виктора .
  • Образование творительного падежа фамилий, оканчивающихся на «-жа», «-ца», «-ча», «-ша», «-ща», зависит от ударения в слове: если это окончание является безударным, то при склонении оно меняется на «-ей»: Капица Петр -> Капицей Петром, Туча Федор -> Тучей Федором ; если же окончание удареное, оно заменяется на «-ой»: Кваша Игорь -> Квашой Игорем, Свеча Иван -> Свечой Иваном . Аналогичная ситуация с фамилиями, оканчивающимися на «-ец»: без ударения окончание меняется на «-ем»: Палец Виктор -> Пальцем Виктором ; под ударением — на «-ом»: Сосковец Олег -> Сосковцом Олегом .
    Как было сказано выше, определить положения ударения в слове программно нельзя, поэтому в алгоритме программы принято допущение, что в словах, оканчивающихся на «-жа», «-ца», «-ча», «-ша», «-ща», окончание безударное (таких слов больше), то есть творительный падеж всегда образуется окончанием «-ей». Напротив, в словах, оканчивающихся на «ец», принято, что окончание находится под ударением, то есть склонение будет с окончанием «-ом». Соответственно, в остальных случаях будут наблюдаться ошибки вида: Квашей Игорем, Свечей Иваном, Пальцом Виктором .
  • Согласно правилам русского языка первая часть двойной русской фамилии склоняется, если она сама по себе может употребляться как фамилия: творчество Мамина-Сибиряка, рассказ Салтыкова-Щедрина, опера Римского-Корсакова и т.д. В противном случае она не изменяется: картина Ван-Дейка, похождения Дон-Жуана, оруженосец Дон-Кихота и др. Так, например, в фамилии Семёнов-Тян-Шанский склоняется первая часть, но не вторая: труды Семёнова-Тян-Шанского .
    Опять же, определить, является ли составная часть фамилии самостоятельной, алгоритмически возможности нет, поэтому для работы принято допущение, что все части составной фамилии следует склонять (в большинстве случаев это так), что в ряде ситуаций приводит к ошибкам: Вана-Дейка, Дона-Кихота, Семёнова-Тяна-Шанского .
  • Иностранные фамилии, оканчивающиеся на «-ов» и «-ин» в творительном падеже меняют окончание на «-ом»: Бенджамином Франклином, Чарльзом Дарвином, Чарли Чаплином, Александром Грином . «Русские» же фамилии с аналогичными окончаниями заканчиваются на «-ым»: Ивановым, Гагариным, Фонвизиным и т.д. Несмотря на то, что перечисленные выше фамилии ( Франклин, Дарвин, Чаплин, Грин ) в виде исключений учтены в алгоритме, есть небольшая вероятность, что встретится какая-либо другая аналогичная иностранная фамилия — в таком случае результат функции будет некорректен.
Читать еще:  Сравнить диапазоны excel

Правила склонения фамилий и имен использованы в соответствии с разделами 13.1 и 13.2 работы Н. А. Еськовой «Трудности словоизменения существительных. Учебно-методические материалы к практическим занятиям по курсу «Язык современной печати» (Госкомитет печати СССР. Всесоюзный институт повышения квалификации работников печати. М., 1990).

10 формул Excel, которые пригодятся каждому

Не нужно тратить время на подсчёты в Microsoft Excel вручную, ведь существует множество формул, которые помогут быстро справиться с поставленными задачами и повысить точность ваших отчётов. Мы собрали 10 наиболее полезных формул, которые вы сможете выучить за один день.

Англоязычный вариант: =SUM(5; 5) или =SUM(A1; B1) или =SUM(A1:B5)

Функция СУММ позволяет вычислить сумму двух или более чисел. В этой формуле вы также можете использовать ссылки на ячейки.

С помощью формулы вы можете:

  • посчитать сумму двух чисел c помощью формулы: =СУММ(5; 5)
  • посчитать сумму содержимого ячеек, сссылаясь на их названия: =СУММ(A1; B1)
  • посчитать сумму в указанном диапазоне ячеек, в примере во всех ячейках с A1 по B6: =СУММ(A1:B6)

Англоязычный вариант: =COUNT(A1:A10)

Данная формула подсчитывает количество ячеек с числами в одном ряду. Если вам необходимо узнать, сколько ячеек с числами находятся в диапазоне c A1 по A30, нужно использовать следующую формулу: =СЧЁТ(A1:A30).

СЧЁТЗ

Англоязычный вариант: =COUNTA(A1:A10)

С помощью данной формулы можно подсчитать количество заполненных ячеек в одном ряду, то есть тех, в которых есть не только числа, но и другие знаки. Преимущество формулы – её можно использовать для работы с любым типом данных.

ДЛСТР

Англоязычный вариант: =LEN(A1)

Функция ДЛСТР подсчитывает количество знаков в ячейке. Однако, будьте внимательны – пробел также учитывается как знак.

СЖПРОБЕЛЫ

Англоязычный вариант: =TRIM(A1)

Данная функция помогает избавиться от пробелов, не включая при этом пробелы между словами. Эта опция может быть чрезвычайно полезной, особенно в тех ситуациях, когда вы вносите в таблицу данные из другого источника и при вставке появляются лишние пробелы.

Мы добавили лишний пробел после фразы “Я люблю Excel”. Формула СЖПРОБЕЛЫ убрала его, в этом вы можете убедиться, взглянув на количество знаков с использованием формулы и без.

ЛЕВСИМВ, ПСТР и ПРАВСИМВ

=ЛЕВСИМВ(адрес_ячейки; количество знаков)

=ПРАВСИМВ(адрес_ячейки; количество знаков)

=ПСТР(адрес_ячейки; начальное число; число знаков)

Англоязычный вариант: =RIGHT(адрес_ячейки; число знаков), =LEFT(адрес_ячейки; число знаков), =MID(адрес_ячейки; начальное число; число знаков).

Эти формулы возвращают заданное количество знаков текстовой строки. ЛЕВСИМВ возвращает заданное количество знаков из указанной строки слева, ПРАВСИМВ возвращает заданное количество знаков из указанной строки справа, а ПСТР возвращает заданное число знаков из текстовой строки, начиная с указанной позиции.

Мы использовали ЛЕВСИМВ, чтобы получить первое слово. Для этого мы ввели A1 и число 1 – таким образом, мы получили «Я».

Мы использовали ПСТР, чтобы получить слово посередине. Для этого мы ввели А1, поставили 3 как начальное число и затем ввели число 6 – таким образом, мы получили «люблю» из фразы «Я люблю Excel».

Мы использовали ПРАВСИМВ, чтобы получить последнее слово. Для этого мы ввели А1 и число 6 – таким образом, мы получили слово «Excel» из фразы «Я люблю Excel».

Формула: =ВПР(искомое_значение; таблица; номер_столбца; тип_совпадения)

Англоязычный вариант: =VLOOKUP (искомое_значение; таблица; номер_столбца; тип_совпадения)

Функция ВПР работает как телефонная книга, где по фрагменту известных данных – имени, вы находите неизвестные сведения – номер телефона. В формуле необходимо задать искомое значение, которое формула должна найти в столбце таблицы.

Например, у вас есть два списка: первый с паспортными данными сотрудников и их доходами от продаж за последний квартал, а второй – с их паспортными данными и именами. Вы хотите сопоставить имена с доходами от продаж, но, делая это вручную, можно легко ошибиться.

  1. В первом списке данные записаны с А1 по В13, во втором – с D1 по Е13.
  2. В ячейке B17 поставим формулу: =ВПР(B16; A1:B13; 2; ЛОЖЬ)
  • B16 = искомое значение, то есть паспортные данные. Они имеются в обоих списках.
  • A1:B13 = таблица, в которой находится искомое значение.
  • 2 – номер столбца, где находится искомое значение.
  • ЛОЖЬ – логическое значение, которое означает то, что вам требуется точное совпадение возвращаемого значения. Если вам достаточно приблизительного совпадения, указываете ИСТИНА, оно также является значением по умолчанию.

Эта формула не такая простая, как предыдущие, тем не менее она очень полезна в работе.

Формула: =ЕСЛИ(логическое_выражение; «текст, если логическое выражение истинно; «текст, если логическое выражение ложно»)

Англоязычный вариант: =IF(логическое_выражение; «текст, если логическое выражение истинно; «текст, если логическое выражение ложно»)

Когда вы проводите анализ большого объёма данных в Excel, есть множество сценариев для взаимодействия с ними. В зависимости от каждого из них появляется необходимость по‑разному воздействовать на данные. Функция «ЕСЛИ» позволяет выполнять логические сравнения значений: если что‑то истинно, то необходимо сделать это, в противном случае сделать что‑то ещё.

Снова обратимся к примеру из сферы продаж: допустим, что у каждого продавца есть установленная норма по продажам. Вы использовали формулу ВПР, чтобы поместить доход рядом с именем. Теперь вы можете использовать оператор «ЕСЛИ», который будет выражать следующее: «ЕСЛИ продавец выполнил норму, вывести выражение «Норма выполнена», если нет, то «Норма не выполнена».

В примере с ВПР у нас был доход в столбце B и имя человека в столбце E. Мы можем поместить квоту в столбце C, а следующую формулу – в ячейку D1:

=ЕСЛИ(B1>C1; «Норма выполнена»; «Норма не выполнена»)

Функция «ЕСЛИ» покажет нам, выполнил ли первый продавец свою норму или нет. После можно скопировать и вставить эту формулу для всех продавцов в списке, значение автоматически изменится для каждого работника.

СУММЕСЛИ, СЧЁТЕСЛИ, СРЗНАЧЕСЛИ

Формула: =СУММЕСЛИ(диапазон; условие; диапазон_суммирования) =СЧЁТЕСЛИ(диапазон; условие)

=СРЗНАЧЕСЛИ(диапазон; условие; диапазон_усреднения)

Англоязычный вариант: =SUMIF(диапазон; условие; диапазон_суммирования), =COUNTIF(диапазон; условие), =AVERAGEIF(диапазон; условие; диапазон_усреднения)

Эти формулы выполняют соответствующие функции – СУММ, СЧЁТ, СРЗНАЧ, если выполнено заданное условие.

Формулы с несколькими условиями – СУММЕСЛИМН, СЧЁТЕСЛИМН, СРЗНАЧЕСЛИМН – выполняют соответствующие функции, если все указанные критерии соответствуют истине.

Используя функции на предыдущем примере, мы можем узнать:

СУММЕСЛИ – общий доход только для продавцов, выполнивших норму.

СРЗНАЧЕСЛИ – средний доход продавца, если он выполнил норму.

СЧЁТЕСЛИ – количество продавцов, выполнивших норму.

Конкатенация

Формула: =(ячейка1&» «&ячейка2)

За этим причудливым словом скрывается объединение данных из двух и более ячеек в одной. Сделать объединение можно с помощью формулы конкатенации или просто вставив символ & между адресами двух ячеек. Если в ячейке A1 находится имя «Иван», в ячейке B1 – фамилия «Петров», их можно объединить с помощью формулы =A1&» «&B1. Результат – «Иван Петров» в ячейке, где была введена формула. Обязательно оставьте пробел между » «, чтобы между объединёнными данными появился пробел.

Формула конкатенации даёт аналогичный эффект и выглядит так: =ОБЪЕДИНИТЬ(A1;» «; B1) или в англоязычном варианте =concatenate(A1;» «; B1).

Кстати, все перечисленные формулы можно применять и в Google‑таблицах.

Эта статья является лишь верхушкой айсберга в изучении Excel. Для профессионального использования программы рекомендуем учится у профессионалов на курсах по Microsoft Excel.

Полные сведения о формулах в Excel

В этом курсе:

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

Начните создавать формулы и использовать встроенные функции, чтобы выполнять расчеты и решать задачи.

Важно: Вычисляемые результаты формул и некоторые функции листа Excel могут несколько отличаться на компьютерах под управлением Windows с архитектурой x86 или x86-64 и компьютерах под управлением Windows RT с архитектурой ARM. Подробнее об этих различиях.

Читать еще:  Как раскрыть скрытые строки в excel

Создание формулы, ссылающейся на значения в других ячейках

Введите знак равенства «=».

Примечание: Формулы в Excel начинаются со знака равенства.

Выберите ячейку или введите ее адрес в выделенной.

Введите оператор. Например, для вычитания введите знак «минус».

Выберите следующую ячейку или введите ее адрес в выделенной.

Нажмите клавишу ВВОД. В ячейке с формулой отобразится результат вычисления.

Просмотр формулы

При вводе в ячейку формула также отображается в строке формул.

Чтобы просмотреть формулу, выделите ячейку, и она отобразится в строке формул.

Ввод формулы, содержащей встроенную функцию

Выделите пустую ячейку.

Введите знак равенства «=», а затем — функцию. Например, чтобы получить общий объем продаж, нужно ввести «=СУММ».

Введите открывающую круглую скобку «(«.

Выделите диапазон ячеек, а затем введите закрывающую круглую скобку «)».

Нажмите клавишу ВВОД, чтобы получить результат.

Скачивание книги «Учебник по формулам»

Мы подготовили для вас книгу Начало работы с формулами, которая доступна для скачивания. Если вы впервые пользуетесь Excel или даже имеете некоторый опыт работы с этой программой, данный учебник поможет вам ознакомиться с самыми распространенными формулами. Благодаря наглядным примерам вы сможете вычислять сумму, количество, среднее значение и подставлять данные не хуже профессионалов.

Подробные сведения о формулах

Чтобы узнать больше об определенных элементах формулы, просмотрите соответствующие разделы ниже.

Формула также может содержать один или несколько таких элементов, как функции, ссылки, операторы и константы.

1. Функции. Функция ПИ() возвращает значение числа пи: 3,142.

2. Ссылки. A2 возвращает значение ячейки A2.

3. Константы. Числа или текстовые значения, введенные непосредственно в формулу, например 2.

4. Операторы. Оператор ^ (крышка) применяется для возведения числа в степень, а * (звездочка) — для умножения.

Константа представляет собой готовое (не вычисляемое) значение, которое всегда остается неизменным. Например, дата 09.10.2008, число 210 и текст «Прибыль за квартал» являются константами. выражение или его значение константами не являются. Если формула в ячейке содержит константы, а не ссылки на другие ячейки (например, имеет вид =30+70+110), значение в такой ячейке изменяется только после редактирования формулы. Обычно лучше помещать такие константы в отдельные ячейки, где их можно будет легко изменить при необходимости, а в формулах использовать ссылки на эти ячейки.

Ссылка указывает на ячейку или диапазон ячеек листа и сообщает Microsoft Excel, где находятся необходимые формуле значения или данные. С помощью ссылок можно использовать в одной формуле данные, находящиеся в разных частях листа, а также использовать значение одной ячейки в нескольких формулах. Вы также можете задавать ссылки на ячейки разных листов одной книги либо на ячейки из других книг. Ссылки на ячейки других книг называются связями или внешними ссылками.

Стиль ссылок A1

По умолчанию Excel использует стиль ссылок A1, в котором столбцы обозначаются буквами (от A до XFD, не более 16 384 столбцов), а строки — номерами (от 1 до 1 048 576). Эти буквы и номера называются заголовками строк и столбцов. Для ссылки на ячейку введите букву столбца, и затем — номер строки. Например, ссылка B2 указывает на ячейку, расположенную на пересечении столбца B и строки 2.

Ячейка или диапазон

Ячейка на пересечении столбца A и строки 10

Диапазон ячеек: столбец А, строки 10-20.

Диапазон ячеек: строка 15, столбцы B-E

Все ячейки в строке 5

Все ячейки в строках с 5 по 10

Все ячейки в столбце H

Все ячейки в столбцах с H по J

Диапазон ячеек: столбцы А-E, строки 10-20

Создание ссылки на ячейку или диапазон ячеек с другого листа в той же книге

В приведенном ниже примере функция СРЗНАЧ вычисляет среднее значение в диапазоне B1:B10 на листе «Маркетинг» в той же книге.

1. Ссылка на лист «Маркетинг».

2. Ссылка на диапазон ячеек от B1 до B10

3. Восклицательный знак (!) отделяет ссылку на лист от ссылки на диапазон ячеек.

Примечание: Если название упоминаемого листа содержит пробелы или цифры, его нужно заключить в апострофы (‘), например так: ‘123’!A1 или =’Прибыль за январь’!A1.

Различия между абсолютными, относительными и смешанными ссылками

Относительные ссылки . Относительная ссылка в формуле, например A1, основана на относительной позиции ячейки, содержащей формулу, и ячейки, на которую указывает ссылка. При изменении позиции ячейки, содержащей формулу, изменяется и ссылка. При копировании или заполнении формулы вдоль строк и вдоль столбцов ссылка автоматически корректируется. По умолчанию в новых формулах используются относительные ссылки. Например, при копировании или заполнении относительной ссылки из ячейки B2 в ячейку B3 она автоматически изменяется с =A1 на =A2.

Скопированная формула с относительной ссылкой

Абсолютные ссылки . Абсолютная ссылка на ячейку в формуле, например $A$1, всегда ссылается на ячейку, расположенную в определенном месте. При изменении позиции ячейки, содержащей формулу, абсолютная ссылка не изменяется. При копировании или заполнении формулы по строкам и столбцам абсолютная ссылка не корректируется. По умолчанию в новых формулах используются относительные ссылки, а для использования абсолютных ссылок надо активировать соответствующий параметр. Например, при копировании или заполнении абсолютной ссылки из ячейки B2 в ячейку B3 она остается прежней в обеих ячейках: =$A$1.

Скопированная формула с абсолютной ссылкой

Смешанные ссылки Смешанная ссылка содержит абсолютный столбец и относительную строку, а также абсолютную строку и относительный столбец. Абсолютная ссылка на столбец имеет форму $A 1, $B 1 и т. д. Абсолютная ссылка на строку имеет форму $1, B $1 и т. д. При изменении положения ячейки, содержащей формулу, относительная ссылка будет изменена, а абсолютная ссылка не изменится. Если вы копируете или заполните формулу в строках или столбцах, относительная ссылка автоматически корректируется, а абсолютная ссылка не изменяется. Например, при копировании и заполнении смешанной ссылки из ячейки a2 в ячейку B3 она корректируется с = A $1 на = B $1.

Скопированная формула со смешанной ссылкой

Стиль трехмерных ссылок

Удобный способ для ссылки на несколько листов Трехмерные ссылки используются для анализа данных из одной и той же ячейки или диапазона ячеек на нескольких листах одной книги. Трехмерная ссылка содержит ссылку на ячейку или диапазон, перед которой указываются имена листов. В Microsoft Excel используются все листы, указанные между начальным и конечным именами в ссылке. Например, формула =СУММ(Лист2:Лист13!B5) суммирует все значения, содержащиеся в ячейке B5 на всех листах в диапазоне от Лист2 до Лист13 включительно.

При помощи трехмерных ссылок можно создавать ссылки на ячейки на других листах, определять имена и создавать формулы с использованием следующих функций: СУММ, СРЗНАЧ, СРЗНАЧА, СЧЁТ, СЧЁТЗ, МАКС, МАКСА, МИН, МИНА, ПРОИЗВЕД, СТАНДОТКЛОН.Г, СТАНДОТКЛОН.В, СТАНДОТКЛОНА, СТАНДОТКЛОНПА, ДИСПР, ДИСП.В, ДИСПА и ДИСППА.

Трехмерные ссылки нельзя использовать в формулах массива.

Трехмерные ссылки нельзя использовать вместе с оператор пересечения (один пробел), а также в формулах с неявное пересечение.

Что происходит при перемещении, копировании, вставке или удалении листов . Нижеследующие примеры поясняют, какие изменения происходят в трехмерных ссылках при перемещении, копировании, вставке и удалении листов, на которые такие ссылки указывают. В примерах используется формула =СУММ(Лист2:Лист6!A2:A5) для суммирования значений в ячейках с A2 по A5 на листах со второго по шестой.

Вставка или копирование. Если вставить листы между листами 2 и 6, Microsoft Excel прибавит к сумме содержимое ячеек с A2 по A5 на новых листах.

Удаление . Если удалить листы между листами 2 и 6, Microsoft Excel не будет использовать их значения в вычислениях.

Перемещение . Если листы, находящиеся между листом 2 и листом 6, переместить таким образом, чтобы они оказались перед листом 2 или после листа 6, Microsoft Excel вычтет из суммы содержимое ячеек с перемещенных листов.

Перемещение конечного листа . Если переместить лист 2 или 6 в другое место книги, Microsoft Excel скорректирует сумму с учетом изменения диапазона листов.

Удаление конечного листа . Если удалить лист 2 или 6, Microsoft Excel скорректирует сумму с учетом изменения диапазона листов.

Стиль ссылок R1C1

Можно использовать такой стиль ссылок, при котором нумеруются и строки, и столбцы. Стиль ссылок R1C1 удобен для вычисления положения столбцов и строк в макросах. При использовании стиля R1C1 в Microsoft Excel положение ячейки обозначается буквой R, за которой следует номер строки, и буквой C, за которой следует номер столбца.

Формула склонения в excel

Книга: Excel. Трюки и эффекты

Склонение фамилии, имени и отчества

Склонение фамилии, имени и отчества

Трюк, который мы рассмотрим в данном разделе, удобно применять при работе со списками ФИО. С его помощью можно быстро переводить требуемые ФИО в родительный или дательный падеж. Чтобы достичь подобного эффекта, следует воспользоваться макросом, код которого приведен в листинге 3.82 (данный код записывается в стандартном модуле).

Листинг 3.82. Склонение ФИО

Public Sub PossessiveCase()

‘ Склоняем ФИО в родительный падеж

Dim strName1 As String, strName2 As String, strName3 As

strName1 = dhGetName(ActiveCell, 1) ‘ Выделяем имя

strName2 = dhGetName(ActiveCell, 2) ‘ Выделяем фамилию

strName3 = dhGetName(ActiveCell, 3) ‘ Выделяем отчество

‘ Если в ячейке менее трех слов – закрытие процедуры

Читать еще:  Формулы excel с примерами

If strName1 = «» Or strName2 = «» Or strName3 = «» Then Exit

Cells(ActiveCell.Row, ActiveCell.Column) = dhPossessive( _

strName1, strName2, strName3)

Public Sub DativeCase()

Dim strName1 As String, strName2 As String, strName3 As

strName1 = dhGetName(ActiveCell, 1)

strName2 = dhGetName(ActiveCell, 2)

strName3 = dhGetName(ActiveCell, 3)

‘ Если в ячейке менее трех слов – закрытие процедуры

If Len(strName1) = 0 Or Len(strName2) = 0 Or Len(strName3) = 0 _

Cells(ActiveCell.Row, ActiveCell.Column) = dhDative( _

strName1, strName2, strName3)

Function dhPossessive(strName1 As String, strName2 As String, _

strName3 As String) As String

Dim fMan As Boolean

‘ Определяем, мужские ФИО или женские

fMan = (Right(strName3, 1) = «ч»)

‘ Склонение фамилии в родительный падеж

If Len(strName1) > 0 Then

‘ Склонение мужской фамилии

Select Case Right(strName1, 1)

dhPossess ive = strName1

dhPossessive = Mid(strName1, 1, Len(strName1) – 2) + «ого»

dhPossessive = strName1 + «а»

‘ Склонение женской фамилии

Select Case Right(strName1, 1)

Case «о», «и», «б», «в», «г», «д», «ж», «з», «к», «л», _

dhPossessive = Mid(strName1, 1, Len(strName1) – 2) & «ой»

dhPossessive = Mid(strName1, 1, Len(strName1) – 1) & «ой»

‘ Склонение имени в родительный падеж

If Len(strName2) > 0 Then

‘ Склонение мужского имени

Select Case Right(strName2, 1)

dhPossessive = dhPossessive & Mid(strName2, _

1, Len(strName2) – 1) & «я»

dhPossessive = dhPossessive & strName2 & «а»

‘ Склонение женского имени

Select Case Right(strName2, 1)

Select Case Mid(strName2, Len(strName2) – 1, 1)

dhPossessive = dhPossessive & Mid( _

strName2, 1, Len(strName2) – 1) & «и»

dhPossessive = dhPossessive & Mid(strName2, _

1, Len(strName2) – 1) & «ы»

If Mid(strName2, Len(strName2) – 1, 1) = «и» Then

dhPossessive = dhPossessive & Mid(strName2, _

1, Len(strName2) – 1) & «и»

dhPossessive = dhPossessive & Mid(strName2, _

1, Len(strName2) – 1) & «и»

dhPossessive = dhPossessive & Mid(strName2, _

1, Len(strName2) – 1) & «и»

dhPossessive = dhPossessive & strName2

‘ Склонение отчества в родительный падеж

If Len(strName3) > 0 Then

dhPossessive = dhPossessive & strName3 & «а»

dhPossessive = dhPossessive & Mid(strName3, 1, _

Len(strName3) – 1) & «ы»

Function dhDative(strName1 As String, strName2 As String, _

strName3 As String) As String

Dim fMan As Boolean

‘ Определяем, мужские ФИО или женские

fMan = (Right(strName3, 1) = «ч»)

‘ Склонение фамилии в дательный падеж

If Len(strName1) > 0 Then

‘ Склонение мужской фамилии

Select Case Right(strName1, 1)

dhDative = Mid(strName1, 1, Len(strName1) – 2) + «ому»

dhDative = strName1 + «у»

‘ Склонение женской фамилии

Select Case Right(strName1, 1)

dhDative = Mid(strName1, 1, Len(strName1) – 2)

dhDative = Mid(strName1, 1, Len(strName1) – 1)

‘ Склонение имени в дательный падеж

If Len(strName2) > 0 Then

‘Склонение мужского имени

Select Case Right(strName2, 1)

dhDative = dhDative & Mid(strName2, 1, _

Len(strName2) – 1) & «ю»

dhDative = dhDative & strName2 & «у»

‘ Склонение женского имени

Select Case Right(strName2, 1)

If Mid(strName2, Len(strName2) – 1, 1) = «и» Then

dhDative = dhDative & Mid(strName2, 1, _

Len(strName2) – 1) & «и»

dhDative = dhDative & Mid(strName2, 1, _

Len(strName2) – 1) & «е»

dhDative = dhDative & Mid(strName2, 1, _

Len(strName2) – 1) & «и»

dhDative = dhDative & strName2

‘ Склонение отчества в дательный падеж

If Len(strName3) > 0 Then

dhDative = dhDative & strName3 & «у»

dhDative = dhDative & Mid(strName3, 1, Len(strName3)

Function dhGetName(strString As String, intNum As Integer)

‘ Функция возвращает слово с номером intNum во входной строке _

Dim strTemp As String

Dim intWord As Integer

Dim intSpace As Integer

‘ Удаление пробелов по краям строки

‘ Просмотр строки (до слова с нужным номером)

For intWord = 1 To intNum – 1

‘ Поиск следующего пробела

If intSpace = 0 Then

‘ Строка strTemp теперь начинается со слова с номером

strTemp = Trim(Right(strTemp, Len(strTemp) – intSpace))

‘ Выделение нужного слова (по пробелу после него)

If intSpace = 0 Then

dhGetName = Trim(Left(strTemp, intSpace))

Чтобы ФИО отобразились в родительном падеже, следует установить курсор в ячейку с этими ФИО и запустить макрос PossessiveCase; в дательном падеже – макрос DativeCase (после написания кода эти макросы будут доступны в окне выбора макросов).

Внимание!

Для реализации трюка необходимо соблюдать условие – ячейка должна содержать не менее трех слов. В противном случае операция выполнена не будет.

Следует учитывать, что в ячейке сначала должна следовать фамилия, за ней – имя, и затем – отчество.

Данный макрос не всегда способен корректно обрабатывать сложные имена и фамилии.

Склонение ФИО по падежам. Пользовательская функция для MS Excel

Склонение падежам по ФИО

Функция позволяет выводить фамилию, отчество и имя, заданные в именительном падеже, в форме другого любого падежа.

Область применения:

Функцию использовать удобно для автоматизации формирования документов в MS или (Excel облегчения создания их вручную), где необходимо ФИО указывать не в именительном падеже: различного договоры рода, кассовые ордера, квитанции, акты приказы, сверок, протоколы, доверенности и т.д.

Функция также если, незаменима средствами автоматизации реализовано формирование выше перечисленных документов в приложении MS Word на основании находящихся, данных в таблицах MS Excel.

Примеры использования:

  • в лице: «в договоре руководителя Баранова Петра Вячеславовича«
  • в ордерах кассовых: «выдано Гнатюку Павлу Васильевичу«, «Гриценко от получено Ирины Сергеевны«
  • в доверенности: «доверяю траспортным управление средством Смирницкому Виталию Валерьевичу«
  • в назначить: «приказе на должность Степашову Ольгу Николаевну«
  • в доклад: «протоколе подготовлен Дворжецким Никитой Ивановичем«

реализовано Что:

  • корректно склоняются фамилии со всеми территории на распространенными стран СНГ окончаниями «-ов», «-ев», «-ин», «-ян(ц)», «-ский(-ской)», «-цкий(-цкой)», «-ый», «-ых», «-их», «-ец», «-нко», «-ук», «-юк», «-ич», «-ия» и др.: Павлов, Зиновьев, Петросян, Гагарин, Высоцкий, Трубецкой, Цой, Задорожный, Седых, Садовничий, Долгих, Сосковец, Нестеренко, Гончарук, Рабинович, Данилюк, Данелия, Кваша, Врубель, Козак, также и т.д., а Казачок соответствующие женские фамилии
  • учитываются склонении в отличия мужских и женских фамилий: Ткачу Ткач и Виктору Светлане, Козовцу Антону и Козовец корректно
  • Екатерине обрабатываются составные фамилии: например, Сибиряк-Мамин, Салтыков-Щедрин, Немирович-Данченко, Кумач-Лебедев
  • не склоняются иноязычные фамилии: Галуа, Дефо, Моруа, Дали, Безе, Верди, Гарсиа, успешно и пр.
  • Хэмингуэй обрабатываются отчества с частицами «-оглы», «-ибн», «кызы»: Мамедов Полад Муртуза оглы -> Поладом Мамедовым Муртуза оглы, Гассан Абдурахман Хаттаб ибн -> Гассаном Абдурахманом ибн Хаттабом, Али Абу ибн Сина -> Абу Али Синой ибн
  • автоматически по отчеству определяется пол (женский/мужской) и исходя из этого выбираются соответствующие склонения правила
  • для ситуаций, когда пол определить автоматически затруднительно (отчество иностранное или можно), отсутствует указать пол в качестве параметра возможен
  • функции вывод в сокращенном виде «фамилия + Полозову»: инициалы Н. А., Васильевой А. К., Дворжецкому Е. Е.
  • возможность использования виде в как надстройки (можно использовать во всех данном на файлах рабочем месте), так и в виде внедренного, кода в файл (функция будет работать в файле данном на любом рабочем месте — удобно, файл если, например, отправляется контрагенту)
  • открытый код программный — при желании можно изучать либо алгоритм модифицировать

Как подключить?

Программа собой представляет один файл с названием bdgFIOPropisyu.Для. bas того, чтобы использовать ее в том ином или файле, функцию нужно импортировать в файл этот. Для этого необходимо:

  1. открыть Excel MS файл, в котором требуется использовать функцию
  2. редактор в войти VBA по нажатию горячей клавиши «F11 + Alt» или через меню:
    • в MS Excel через — 2007 пункт ленты «Разработчик»:
    • в MS Excel через — 2003 пункт главного меню «Сервис -> Редактор -> Макрос Visual Basic»:
  3. в главном меню VBA редактора выбрать пункт «File» -> «Import появившемся. «:
  4. в file окне выбора файла выбрать bdgFIOPropisyu файл.bas и нажать кнопку «Открыть»:

ФИОВПадеже, программный код импортирован и его использовать можно.

Как использовать?

  1. выделите курсором которой, в ячейку хотите поместить результат функции
  2. пиктограмму на нажмите «Вставить функцию» на панели формул:
  3. в окне появившемся Мастера функций выберите категорию «пользователем Определенные», затем в списке выделите название ФИОВПадеже «функции» и нажмите кнопку «ОК»:
  4. и далее в окне функций Аргументы заполните поля: в полях Фамилия, Отчество и Имя укажите ссылки на ячейки с соответствующими поле, а в значениями Падеж укажите число от 1 до 6 (номер именительного от падежа до предложного) и нажмите кнопку «ОК»:

Ситуации, работа когда функции может быть некорректной:

что на то, Несмотря ситуаций, когда работа функции быть может неудовлетворительной, ниже перечислено немало, столкновения вероятность с таким ФИО в практической работе мала достаточно, т.к. в 99,9% случаев фамилии, встречающиеся на территории склоняются, России по общим правилам.
Кроме того, заметить следует, что другие алгоритмы и программы могут не также гарантировать корректность результата в 100% русский — случаев язык слишком велик и могуч, быть чтобы описанным набором логических правил (ниже смотрите про влияние положения ударения в происхождения, слове фамилии, про зависимость написания формы женской фамилии от написания мужской формы и т.д.).

    По русского правилам языка склонение мужских и женских фамилий иноязычных, оканчивающихся на «-а» и «-я», зависит от места ударения в происхождения и слове фамилии.

склонения Правила фамилий и имен использованы в соответствии с работы 13.1 и 13.2 разделами Н. А. Еськовой «Трудности словоизменения существительных. методические-Учебно материалы к практическим занятиям по курсу «современной Язык печати» (Госкомитет печати СССР. институт Всесоюзный повышения квалификации работников печати. М., Источник).

Ссылка на основную публикацию
Adblock
detector