У меня была та же проблема. Кажется, что передача Me.ComboBox1.Value
в качестве аргумента для функции Vlookup
вызывает проблему. То, что я сделал, присваивало этому значению значение double, а затем помещало его в функцию Vlookup.
Dim x As Double
x = Me.ComboBox1.Value
Me.TextBox1.Value = Application.WorksheetFunction.VLookup(x, Worksheets("Sheet3").Range("Names"), 2, False)
Или, для более короткого метода, вы можете просто преобразовать тип в функцию Vlookup с помощью Cdbl(<Value>)
.
Итак, это будет
Me.TextBox1.Value = Application.WorksheetFunction.VLookup(Cdbl(Me.ComboBox1.Value), Worksheets("Sheet3").Range("Names"), 2, False)
Как это ни странно, это работает.
Надеюсь, это поможет.
Ваш делегат ожидает два параметра:
public delegate List<CustomObj> SearchFoo(string a, string b);
Строка A и строка B
d = foo;
private List<CustomObj> foo(string a, string b, string c)
{ ... }
Когда вы делаете это, у вас есть 3 параметра в foo, но ваш делегат ожидает только 2, поэтому вы получаете исключение.