ERROR : (Python)dict can not be converted to a COM VARIANT

 
 
 
 #ERROR : ...
#exceptions.TypeError: Objects of type 'dict' can not be converted to a COM VARIANT

- または -

#ERROR : Traceback (most recent call last):
#  File "<Script Block >", line 2, in ?
#    <line triggering error>
#  File "C:\Python23\lib\site-packages\win32comext\axscript\client\pyscript.py", line 150, in __getattr__
#    return getattr(self._scriptItem_.dispatchContainer,attr)
#  File "C:\Python23\lib\site-packages\win32com\client\dynamic.py", line 150 in __getattr__
#    raise AttributeError, "%s.%s" % (self._username_, attr)
#AttributeError: line 150

考えられる原因

カスタム コマンドからの戻り値として Python ネイティブ ディクショナリを使おうとするスクリプト ブロックのトレースバックとともに、上記のようなエラーが表示される可能性があります。

解決策

カスタム コマンドの戻り値として、Python ネイティブ ディクショナリ型を使用することはできませんが、その代わりに ActiveX スクリプト ディクショナリを使用できます(「Python ディクショナリを戻り値として使用」を参照)。