>>85
お手数おかけします。
今環境がないので、明日再度試験してみます。

あと、IEnumVARIANTってVBAで
どうやったらつかえるんだろうという疑問もあります。

C#側で IEnumerator を戻り値としたとき、
メソッド || プロパティ(get) の前に
[return: MarshalAsAttribute(UnmanagedType.Interface)]を
書くと、オブジェクトブラウザで見たときには同じ
IEnumVARIANTであるにも関わらずVBAで扱えるように
なります(MoveNextとか呼べる)

長くなりました。すみません。

普段Windowsプログラム書かないもので知識不足な面が
ありますが、どなたかご存じでしたらご教授下さい。