Home » Python » xlwingsの使い方 » xlwingsでセルの表示形式を取得する-Range.number_formatプロパティ

xlwingsでセルの表示形式を取得する-Range.number_formatプロパティ

動作検証バージョン:Windows 10 + Python 3.7.3 + xlwings 0.15.5 + Excel 1907

「excel rangeオブジェクト 表示形式 python」
という検索キーワードで、このサイト『インストラクターのネタ帳』へアクセスがありました。

Pythonの何らかの外部ライブラリを使って、セルの表示形式を操作するには、どのようなコードを書けばいいのかを探していた方による検索でしょう。

[スポンサードリンク]

「excel rangeオブジェクト 表示形式 python」
という検索キーワードだけでは、どのライブラリでのコードを求めていたのかがわかりませんので、「Range」という名前のオブジェクトが存在するxlwingsの例を、この記事ではご紹介します。

xlwingsでセルの表示形式を取得するサンプル

以下のようなスクリプトで、Cドライブtempフォルダーに存在するfoo.xlsxファイルの、先頭シートA1セルの表示形式が出力されます。

import xlwings as xw

bk = xw.Book('C:\\temp\\foo.xlsx')
ws = bk.sheets[0]
rng = ws.range('A1')
print(rng.number_format)

xlwingsでは、Range.number_formatプロパティで、セルの表示形式を取得・設定できます。

number_formatはNumberFormatLocalに相当

Excel VBAからセルの表示形式を取得・設定するコードをご存知の方だと、xlwingsのRange.number_formatが、Excel VBAのRange.NumberFormatLocalとRange.NumberFormatのどちらだろうか、と疑問を感じるはずです(感じてください)。

上記のSubプロシージャを実行したときに、A1セルが「G/標準」であれば「G/標準」と出力されるので、xlwingsのRange.number_formatは、Excel VBAのRange.NumberFormatLocalプロパティをラップしているようです。

NumberFormatLocalプロパティのほうがNumberFormatよりメリットが大きいと私は感じているので、納得の結果です。

最終更新日時:2022-02-08 03:27

[スポンサードリンク]

Home » Python » xlwingsの使い方 » xlwingsでセルの表示形式を取得する-Range.number_formatプロパティ

「xlwingsの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.