XLOPER12 は最大 32,767 Unicode 文字の長さの文字列をサポートするようになりましたが、xlfEvaluate (およびその他) の Excel C-Api 関数は、Excel 2010 でも引き続き 255 文字の長さに制限されています。これより長い文字列を含む XLOPER12 が渡されると、xltypeErr が返されます。 255 より。
ユーザーが Excel で表示するすべての文字列は、多くのバージョンで Unicode 文字列として内部的に保存されるようになりました。 Unicode ワークシート文字列の長さは最大 32,767 (215 - 1) 文字で、有効な Unicode 文字を含めることができます。
C API が最初に導入されたとき、ワークシート文字列は長さが 255 文字に制限されたバイト文字列であり、C API はこれらの制限を反映していました。 Excel 2007 では、C API が更新され、Excel の長い Unicode 文字列を処理できるようになりました。これは、正しい方法で登録された DLL 関数が Unicode 引数を受け入れ、Unicode 文字列を返すことができることを意味します。
注:バイト文字列は、下位互換性のために C API で引き続き完全にサポートされていますが、同じ 255 文字の制限があります。文字列を切り詰めるか、文字列を複数のセルに分割する以外に簡単な解決策はありません。