Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Программирование на Basic / VBA


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный платный хостинг на базе Windows 2008

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Чемпионы рейтинга экспертов в этой рассылке

Гаряка Асмик
Статус: Специалист
Рейтинг: 2905
∙ повысить рейтинг »
Vasiliy83
Статус: Бакалавр
Рейтинг: 1406
∙ повысить рейтинг »
Megaloman
Статус: Профессионал
Рейтинг: 1130
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И ПО / Программирование / Basic/VBA

Номер выпуска:998
Дата выхода:19.03.2010, 20:00
Администратор рассылки:Калашников О.А., Руководитель
Подписчиков / экспертов:347 / 99
Вопросов / ответов:1 / 2

Вопрос № 177250: Уважаемые эксперты, подскажите насколько я догадываюсь, чтобы кнопки в документе всегда работали по инструкции Call и не получить сообщение Прцедура или фунцция не определена, тогда следует наверное писать Call имя проекта или что вроде того, д...



Вопрос № 177250:

Уважаемые эксперты, подскажите насколько я догадываюсь, чтобы кнопки в документе всегда работали по инструкции
Call и не получить сообщение Прцедура или фунцция не определена, тогда следует наверное писать
Call имя проекта или что вроде того, далее процедура или функция??
Подскажите поточней, когда можно писать процедуру когда функцию, процедура вроде ещё проще указывается без Call просто "Pro"
Спасибо Эндрю

Отправлен: 14.03.2010, 19:51
Вопрос задал: Ципихович Эндрю, Посетитель
Всего ответов: 2
Страница вопроса »


Отвечает Измалков Эдуард Леонидович, 1-й класс :
Здравствуйте, Ципихович Эндрю!

Самое основное отличие процедуры от функции заключается в том, что функция может иметь возвращаемое значение, т.е. функцию можно использовать с правой стороны выражения (переменной можно присвоить значение функции, например:

Function СуммаТрехЧисел(byVal ПервоеЧисло as integer, byVal ВтороеЧисло as integer, byVal ТретьеЧисло as integet) as integer
Сумма ТрехЧисел = ПервоеЧисло + ВтороеЧисло + ТретьеЧисло
End Function

dim Переменная as integer
Переменная = СуммаТрехЧисел(1,2,3))

Процедура же не может иметь возвращаемого значения.

Ключевое слово Call не обязательно, можно использовать как функции, так и процедуры без него, просто вызывая их по имени. Но если для вызова процедуры используется Call, то в случае, если процедура имеет список аргументов, то они обязательно должны быть заключены в круглые скобки, если же Call опускается, то и круглые скобки должны быть пропущены.
Если ключевое слово Cal l используется для вызова функции, которая имеет возвращаемое значение, то это значение опускается.

Ответ отправил: Измалков Эдуард Леонидович, 1-й класс
Ответ отправлен: 14.03.2010, 21:15
Номер ответа: 260119

Оценка ответа: 5

Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 260119 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:

  • Отвечает F®ost, Советник :
    Здравствуйте, Ципихович Эндрю.
    Функцию вызывают, чтобы выполнить какие-то расчеты или проверки. Когда она завершает работу, то возвращает управление вызывающей программе и передает ей результат расчета. А процедуру вызывают, чтобы выполнить какие-то действия, но от нее не требуется возвращать основной программе какие-либо значения.
    Вызов функции, как правило, осуществляется посредством указания в правой части какого-либо оператора ее имени и параметров. С другой стороны, процедура вызывается при помощи отдельного оператора:
    Код:
    Call <Имя процедуры> (Параметры) 
    или
    <Имя процедуры> (Параметры)

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

    -----
    От вопроса к ответу, от проблемы к решению

    Ответ отправил: F®ost, Советник
    Ответ отправлен: 14.03.2010, 22:52
    Номер ответа: 260122
    Беларусь, Минск
    Тел.: 375292792018
    Организация: Минский Промтранспроект
    Адрес: ул. В.Хоружей, 13, г. Минск, Беларусь
    Адрес сайта: http://www.mptp.by

    Оценка ответа: 5

    Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 260122 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:

  • Оценить выпуск »
    Нам очень важно Ваше мнение об этом выпуске рассылки!

    Задать вопрос экспертам этой рассылки »

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2010, Портал RFpro.ru, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2010.6.14 от 03.03.2010

    В избранное