3

Python と Excel を統合する作業プログラムがあります (xlwt のおかげです)。私はcsvファイルから読み込んで、Excelにコピーしています。これを行っている間、xlwt の数式モジュールを使用して含める数式もいくつかあります。具体的に言うとコードは

ws_xlwt.write(3,3, Formula("MMULT(MINVERSE(C11:D12),"+col_char+"2:"+col_char+"3)"), style)

col_char は、ループで生成される ASCII コードです。配列 (C11:D12) には、次のコードを使用して生成されたデータが含まれています。

ws_xlwt.write(10,2, Formula("SUMPRODUCT($C$36:$C$161,$C$36:$C$161)"), style)

プログラムが実行されると、数式が特定のセルに正しく配置されます。ただし、セルには結果ではなくエラー「#VALUE」が表示されます。興味深い点は、Excel ファイルを開き、この特定のセルをダブルクリックして編集し、何も変更せずに Enter キーを押すと、結果が表示されることです。これが Python 統合の問題なのか、それとも Excel の問題なのかはわかりません。

OS - Windows 7 64-bit
Python - 2.7 32-bit
4

1 に答える 1

1

私の最もよい推測はそれが公式の評価によるものであるということです。数式が挿入されたときにそれが評価されるとは思いません。つまり、関数の評価時に結果が存在しないxlwtため、値エラーが発生します。ダブルクリックしてEnterキーを押すと機能する理由は、Excelがすべてを再計算し、有効な結果が得られるためです。SUMPRODUCTMMULT

于 2012-11-08T20:15:00.550 に答える