Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Форум .::NoWa.cc::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Программирование

Уважаемые пользователи nowa.cc. Мы работаем для вас более 20 лет и сейчас вынуждены просить о финансовой помощи по оплате за сервер.
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: Z021474945171 Webmoney WME: E159284508897 Webmoney WMUSDT: T206853643180
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!

Ответ
 
Опции темы Опции просмотра Language
Старый 27.03.2011, 15:18   #1
Новичок
 
Пол:Мужской
Регистрация: 07.03.2009
Сообщений: 14
Репутация: 1
По умолчанию Вопрос VBA. Objects

Добрый день.


Почему (1) работает, а (2) и (3) нет? Ошибка: object required. Спасибо!

--------(1)-----------
Sub test()
test2 (Sheets("Input").Range("A1:A10"))
End Sub


Sub test2(y As Range)
MsgBox y.Count
End Sub

--------(2)-------------
Sub test()
Dim x As Range
Set x = Sheets("Input").Range("A1:A10")
test2 (x)
End Sub

Sub test2(y As Range)
MsgBox y.Count
End Sub

---------(3)------------
Sub test()
test2 (Range("A1:A10"))
End Sub

Sub test2(y As Range)
MsgBox y.Count
End Sub

Последний раз редактировалось telek1; 27.03.2011 в 15:27..
telek1 вне форума
 
Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама: Заходите на сайт MebelStol.ru: портленд диван - отличные цены и большой выбор!отбеливание зубов в стоматологии ценыВстраиваемая посудомоечная машина Siemens SN 636X06KEЧастотный преобразователь VCI-G1.5-4BЗаходите на сайт MebelStol.ru: консоль в гостиную - отличные цены и большой выбор!


Старый 28.03.2011, 18:23   #2
semantic
Новичок
 
Пол:Мужской
Регистрация: 02.12.2010
Сообщений: 5
Репутация: 3
По умолчанию Re: Вопрос VBA. Objects

Работает так:
--------(2)-------------
Sub test()
Dim x As Range
Set x = Sheets("Input").Range("A1:A10")
test2 x
End Sub

Sub test2(y As Range)
MsgBox y.Count
End Sub

---------(3)------------
Sub test()
test2 Range("A1:A10")
End Sub

Sub test2(y As Range)
MsgBox y.Count
End Sub
semantic вне форума
 
Ответить с цитированием Вверх
Старый 28.03.2011, 21:22   #3
telek1
Новичок
 
Пол:Мужской
Регистрация: 07.03.2009
Сообщений: 14
Репутация: 1
По умолчанию Re: Вопрос VBA. Objects

Спасибо! А почему без скобок? Это так всегда с объектами? Если хочешь послать worksheet, range, chart в другой sub, то скобки не нужны, а если числа (integer, double,...), текст (String) то нужны?
telek1 вне форума
 
Ответить с цитированием Вверх
Старый 29.03.2011, 20:37   #4
semantic
Новичок
 
Пол:Мужской
Регистрация: 02.12.2010
Сообщений: 5
Репутация: 3
По умолчанию Re: Вопрос VBA. Objects

Объекты не при чем.
Скобки обязательны только при вызове функций или при использовании ключевого слова Call
Т.е. вариант Call test2(Range("A1:A10")) тоже должен работать.
semantic вне форума
 
Ответить с цитированием Вверх
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение:
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вопрос frankenstein Архив 2 25.01.2008 18:34
Вопрос о ftp GansKloss Архив 1 23.11.2007 21:38
Вопрос. NektoF Веб - Программирование 2 29.12.2006 10:29
Вопрос MNZ Архив 5 31.08.2006 08:29

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 08:43. Часовой пояс GMT +3.


Copyright ©2004 - 2025 NoWa.cc

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.04493 секунды с 13 запросами