問題タブ [openpyxl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
15231 参照

python-3.x - Openpyxl: セル値の操作

Excelシートからセルの値を取得し、それらを計算して、出力を新しいシートに書き込もうとしています。ErrorType を取得し続けます。以前にコードを正常に実行したことがありますが、この側面を追加しただけなので、コードは以下に要約されています。

TypeError メッセージをスローします。

最初 = ws.cell(row=x+y, column=1).value)/100
TypeError: /: 'NoneType' および 'int' のサポートされていないオペランド型

これはそれぞれ ws.cell 値と 100 を参照していると思いますので、次のことも試しました。

発生するもの:

TypeError: int() 引数は文字列または数値でなければなりません

列のすべてのセルが数字のみで構成されていることを確認しました。さらに、openpyxl の cell.data_type は「n」を返します (ドキュメントでわかる限り、おそらく番号に対して)。

より単純な数学もテストしましたが、同じエラーが発生しました。

私の検索はすべて、openpyxlが通常このように動作していることを示しているようです。私は何か間違ったことをしていますか、それとも単にモジュールの制限ですか? もしそうなら、プログラムによる回避策はありますか?

おまけとして、コードをより簡潔に書くためのアドバイスをいただければ幸いです。私は始めたばかりで、このようなアイデアを書くためのよりクリーンな方法があるに違いないと感じています。

Python 3.3、openpyxl-1.6.2、Windows 7


概要

少し異なる回避策を使用しましたが、cfiの答えはそれを理解するのに役立ちました。元のファイルを調べると、空のセルが 1 つありました (これは以前に見逃していました)。散発的な空のセルを含む列で後でこのコードを再利用するため、以下を使用しました。

したがって、指定されたセルが空の場合、そのセルは無視され、スキップされました。

0 投票する
2 に答える
27558 参照

python - Ubuntu に現在の OpenPYXL パッケージをインストールする方法

Windows インストールで正しく動作するスプレッドシート読み取りコード (openpyxl を使用) があります。ただし、私の Ubuntu Rackspace サーバーでは、名前付き範囲エラーで失敗します。

Ubuntu の openpyxl パッケージ (先週 apt-get を使用してインストールしたもの) が数年前 (1.5.6) であることに気付きました。最新バージョン (1.6.2) をインストールしたいのですが。

新しいバージョンをインストールするには、どのツールを使用できますか? または手動で行う必要がありますか?

0 投票する
1 に答える
3936 参照

python - 大きなファイルの保存時に Openpyxl がハングする

XML ファイルを読み取り、関連データを TSV ファイルに出力するスクリプトを作成しました。openpyxlでXLSXファイルを書くように変換しています。スクリプトの最後でワークブックを保存すると、保存中に 30 秒以上ハングします。これは、私が書いている大量のデータが原因であると想定しています(列「BG」に10144行)。これを最適化して保存を高速化する方法や、生成中にファイルに直接書き込む方法はありますか?

0 投票する
1 に答える
5857 参照

python - pandas.io.parsers.ExcelFile を使用して、StringIO バッファからデータフレームに Excel ファイルを読み取りますか?

文字列バッファを pandas DataFrame に読み込みたいと思います。パンダの ExcelFile 機能を使用するのが良い方法のようです。私は次のようなことをしようとしました:

それ以降は、 ExcelFile.parse() が使用できると思います。

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

バッファからファイルを読み込む方法についてのアイデアはありますか?

0 投票する
1 に答える
15625 参照

python - Openpyxl load_workbook と保存に時間がかかりすぎる

次の行は、最初は 45 秒かかり、1 分半以上かかります。Something.xls は 4 MB の大きさで、変更はマイナーです。何か問題がありますか?

詳細: 私は Windwos 7 で Python 2.7.3 を使用しています。ワークブックには 2 つのシートがあり、最初のシートには 67610 行あります。この仕事をするためにネットワークにアクセスしていません。

0 投票する
1 に答える
2406 参照

python - openpyxl python3 -- 行全体をフォーマットすると奇妙な動作が引き起こされる

私はピボットテーブルの XLSX ファイルを扱っており、それらを解析してタブごとに新しいファイルにするスクリプトを書いています。

デフォルトでは、openpyxl はピボット テーブルをサポートしていないため、コピー中に失われたピボットの「スタイル」を再挿入するためにいくつかの作業を行う必要があります。

これを行うには、各行と列を反復処理してTotal、列 0 の値を探します。見つかったら、行は all に変更されますbold=True

代わりに、最初のNone. 私のprint('bolding totals')メッセージは、各行/セルを正しく評価していることを示しています。おそらく、私は頭が悪く、ループのくぼみを台無しにしていますか?


この時点で、これはスタイルの openpyxl 処理のバグであると思われます。別の非常に単純な編集を実行したところ、奇妙な動作が発生しました。

太字/非太字のセルを含む単純なレイアウトがある場合。次に、この単純なコマンドを実行して、1 つのセルを変更します。

セルだけではなく、列全体の出力が変化します。

0 投票する
11 に答える
234936 参照

python - Pandas: Excel ファイルでシートのリストを検索する

新しいバージョンの Pandas は、次のインターフェイスを使用してExcel ファイルを読み込みます。

しかし、利用可能なシートがわからない場合はどうすればよいですか?

たとえば、次のシートのExcelファイルを使用しています

データ 1、データ 2 ...、データ N、foo、bar

Nしかし、私は先験的に知りません。

Pandas の Excel ドキュメントからシートのリストを取得する方法はありますか?