Здравствуйте, Plac2006, Вы писали:
P>a = MyFunc(Textbox1)
P>Проблема заключается в том, что вместо TextBox1 программа видит его умолчательный член,
P>то есть TextBox1, и поэтому выдаёт ошибку. Как это можно исправить? Т.е. как передать сам TextBox?
Нужно описывать или передавать в функцию правильные типы. Есть Object Browser (F2), если в нем в строке поиска написать "TextBox" и нажать "Поиск", он показывает, где такие типы есть. Так вот у меня есть и Excel.TextBox, и MSForms.TextBox. Раз есть несколько объявлений типа, то VB(A) использует первое встретившееся в списке References... Чтобы он не мучился, нужно явно описывать библиотеку, тип которой используется.
Function MyFunc(ByVal tbx As TextBox) As String
=> нужно что-то выбрать из этого
Function MyFunc(ByVal tbx As Excel.TextBox) As String
Function MyFunc(ByVal tbx As MSForms.TextBox) As String