2

ArrayListVisual Basic Excel 2003 で、Java のようなクラスを作成しようとしています。

ジャワ

List<Employee> employees = new ArrayList<Employee>();
Employee employee = new Employee();
employee.setName("tom");
employees.add(employee);

VB

Dim resultList As New Collection    
Dim Manager As Employee
Manager.Name = "df"    
resultList.Add ("rr") 'correct
resultList.Add (Manager) 'error

しかし、これにより次のエラーが発生します。

パブリック オブジェクト モジュールで定義されたユーザー定義型のみを、バリアントとの間で強制変換したり、レイト バインド関数に渡したりできます。

4

1 に答える 1

1

UDT にはタイプ情報が関連付けられていないため、コレクションに追加することはできません。メンバーの数とタイプが不明であるため、バリアントとの間で確実に変換する方法がないためです。

タイプをクラスに置き換えるかEmployee、キーを使用していないように見えるため、型付き配列を使用できます。arr() as Employee

于 2013-04-05T11:56:14.830 に答える