是否可以使用自定义类型参数(不是默认的数据类型,如String等)在模块内调用Sub?如果是这样,请举个例子。
例如: 假设我在下面的模块中定义了类型
Public Type myPersonalData
Name As String
Age As Integer
EMail As String
Address As String
End Type
我的Sub如下:
Sub PopulatePerson(person As myPersonalData)
'Need to Access data using person.Name, person.Age
End Sub
在我的C#代码中, 因为我没有类型,所以我在为myPersonalData创建结构,就像这样,
public struct myPersonalData
{
public String Name;
public int Age;
public String EMail;
public String Address;
}
我这样创建对象,
myPersonalData person = new myPersonalData();
person.Name = "blahblah";
person.Age = 25;
person.EMail = "blahblah@blah.com";
person.Address = "Home";
使用以下参数调用excel宏
excelApp.Run("myExcelFile.xlsm!PopulatePerson",person);
在运行时出现如下所示的参数错误,
An unhandled exception of type 'System.ArgumentException' occurred in console.exe
Additional information: Value does not fall within the expected range.
注意:如果我有String类型的参数,它可以正常工作。任何想法都会有所帮助。