Алексей Гладкий - Excel. Трюки и эффекты

Тут можно читать онлайн Алексей Гладкий - Excel. Трюки и эффекты - бесплатно ознакомительный отрывок. Жанр: comp_soft. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Excel. Трюки и эффекты
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    неизвестен
  • ISBN:
    нет данных
  • Рейтинг:
    5/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Алексей Гладкий - Excel. Трюки и эффекты краткое содержание

Excel. Трюки и эффекты - описание и краткое содержание, автор Алексей Гладкий, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
Данная книга предназначена для пользователей Microsoft Excel и содержит описание приемов и методов работы, которые из-за своей специфичности недостаточно представлены (либо вообще не представлены) в пользовательской, справочной и иной соответствующей документации. Изучение приведенных в книге примеров позволит читателю открыть для себя не известные ранее возможности Excel. Предлагаемый материал легко усваивается благодаря тому, что излагается доступным и понятным языком.

Excel. Трюки и эффекты - читать онлайн бесплатно ознакомительный отрывок

Excel. Трюки и эффекты - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Алексей Гладкий
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Вызов процедур

Для вызова процедуры в программе на VBA предусмотрена инструкция Call, формат которой приведен ниже:

[Call] Имя_процедуры [Список_аргументов]

Здесь элемент Имя_процедуры представляет собой идентификатор вызываемой процедуры. Если процедура принимает аргументы, то они должны быть указаны на месте элемента Список_аргументов через запятую. В качестве аргументов в вызывающей процедуре или функции используются константные значения или идентификаторы переменных соответствующих типов.

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

Примечание

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

Пусть имеется процедура:

Sub ProcedureExample(ByVal intNumber As Integer, ParamArray varArray())

' Инструкции процедуры

End Sub

Пусть также имеется процедура TestExample, в которой необходимо вызывать процедуру ProcedureExample. Процедуру TestExample можно реализовать следующим образом:

Sub TestExample()

' Инструкции процедуры

' Вызов ProcedureExample

Call ProcedureExample(123, «Значение1», «Значение2», «Значение3»)

' Инструкции процедуры

End Sub

Если в TestExample не использовать ключевое слово Call, то вызов процедуры будет выглядеть так:

' Вызов ProcedureExample

ProcedureExample 123, «Значение1», «Значение2», «Значение3»

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

Объявление функций. Возврат значения

Для объявления функций в VBA используется следующая конструкция:

[Private | Public] [Static] Function Имя_функции [(Список_аргументов)] _

[As Имя_типа]

[Инструкции]

[Имя_функции = Значение]

[Exit Functon]

[Инструкции]

[Имя_функции = Значение]

End Function

Приведенный формат объявления функции отличается от объявления процедуры использованием ключевого слова Function вместо Sub, возможностью указания типа возвращаемого функцией значения (после списка аргументов) и возможностью в теле функции присвоить значение переменной с идентификатором, соответствующим идентификатору этой функции (Имяфункции = Значение). При объявлении функций можно использовать все возможности, доступные при объявлении процедур.

Если тип возвращаемого функцией значения не указан, то подразумевается возвращение значения типа Variant.

Для возврата значения функцией необходимо в нужном ее месте присвоить соответствующее значение переменной с таким же идентификатором, как и идентификатор функции. Часто в функции может быть несколько точек, в которых возвращается значение. Если после получения результата нужно немедленно выходить из функции, то после присвоения Имяфункции = Значение используется инструкция Exit Function. Если на протяжении выполнения функции не было использовано присвоение Имяфункции = Значение, то возвращается значение по умолчанию для соответствующего типа данных (см. подраздел об инициализации переменных).

Ниже приведен пример функции, которая вычисляет квадратный корень из переданного ей аргумента (если аргумент меньше нуля, то возвращается значение -1, сигнализирующее об ошибке):

Function dhSQR(dblValue As Double) As Double

If dblValue < 0 Then

' Недопустимый аргумент функции

dhSQR = -1

Else

' Вычисление квадратного корня

dhSQR = Sqr(dblValue)

End If

End Function

Вызов функций

Для вызова функций допускается также использовать инструкцию Call, например:

Call dhSQR(16.324)

или

dhSQR 16.324

Однако при этом теряется возвращаемое функцией значение. Для использования возвращаемого значения идентификаторы функций необходимо включать в выражения справа от знака равенства или другого оператора. Тогда в момент вычисления значения выражения, в состав которого входит идентификатор функции, происходит вызов данной функции, а возвращенное ей значение подставляется в исходное выражение вместо идентификатора функции. Например, в результате обработки каждого из следующих выражений в переменную dblRes будет записано значение 5:

dblRes = dhSQR(25)

dblRes = 1 + dhSQR(16)

Точно таким же образом вызываются все встроенные функции VBA, например

IsArray, SQR и Array.

Особенности передачи параметров

При создании и использовании процедур и функций необходимо учитывать некоторые особенности передачи параметров в них. Они общие для процедур и функций. Рассмотрим данные особенности.

Позиционная передача параметров

Этот способ передачи параметров наиболее распространен и применяется практически во всех языках программирования. Во всех предыдущих примерах использовался именно позиционный способ передачи параметров в функции и процедуры. Суть данного способа в том, что при вызове процедуры или функции аргументы записываются в том порядке, в котором они указаны при ее объявлении. Пусть, например, необходимо использовать такую процедуру:

Sub Procedure(Optional intA As Integer = 25, Optional intB As Integer)

' Инструкции процедуры

End Sub

Вызов данной процедуры с использованием позиционной передачи параметров выглядит следующим образом:

Procedure 12, 56

или

Call Procedure (12, 56)

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

Procedure 12 Пропущен второй параметр

Procedure, 12 Пропущен первый параметр

Procedure Пропущены оба параметра

Использование именованных параметров

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

Для использованной выше процедуры Procedure вызов с применением именованных параметров выглядит следующим образом:

Procedure intA:=12, intB:=56

или

Procedure intB:=56, intA:=12

При использовании именованных параметров значительно упрощается передача необязательных параметров. Чтобы пропустить задание такого параметра, ему просто не нужно ничего присваивать при вызове функции или процедуры, например:

Procedure intB:=56

В данном примере не очень заметны преимущества использования именованных параметров. Другое дело, если необходимо использовать следующую функцию, задав значения только параметров arg3 и arg8:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Алексей Гладкий читать все книги автора по порядку

Алексей Гладкий - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Excel. Трюки и эффекты отзывы


Отзывы читателей о книге Excel. Трюки и эффекты, автор: Алексей Гладкий. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x