Home » Python » xlwingsの使い方 » xlwingsでセルに数値を入力する-Range.valueプロパティ

xlwingsでセルに数値を入力する-Range.valueプロパティ

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

「python 数値 エクセル書き込み」
という検索キーワードをキッカケにして、OpenPyXLを使ってExcelに数値を書き込むスクリプトをご紹介しました。

xlwingsを使った場合も確認しましょう。

xlwingsでセルに数値を入力するサンプル

xlwingsを使う場合、以下のようなスクリプトで、セルに数値を入力できます。

import xlwings

wb = xlwings.Book(r'C:\temp\org.xlsx')
sht = wb.sheets[0]

sht.range('A1').value = 1000
sht.range((2, 1)).value = 2000
sht.cells(3, 1).value = 3000

wb.save(r'C:\temp\new.xlsx')

Cドライブのtempフォルダーにorg.xlsxブックを用意しておいてから上記のスクリプトを実行すると、

sht = wb.sheets[0]

で取得した先頭ワークシートの、
  A1セルに「1000」
  A2セルに「2000」
  A3セルに「3000」
がそれぞれ書き込まれ、news.xlsxブックとして保存されます。

Excel VBAに似たコード

数値の入力を行っている

sht.range('A1').value = 1000

と、

sht.cells(3, 1).value = 3000

は、Excel VBAに似たコードです。

これらは、それぞれExcel VBAの、

sht.Range("A1").Value = 1000
sht.Cells(3, 1).Value = 3000

に相当すると考えていいでしょう。

cellsで単独のセルを取得する

xlwingsのSheet.cellsプロパティについてドキュメントには、

Returns a Range object that represents all the cells on the Sheet (not just the cells that are currently in use).

と書かれているだけで、個々のセルを取得できる件は記述がありませんが、上記のようなコードで個々のセルを取得できます。

xlwingsのrangeはExcel VBAのRange.Item的に使える

xlwingsのrangeを使ってA2セルに「2000」を入力している

sht.range((2, 1)).value = 2000

は、Excel VBAでは見ない形のコードですが、公式ドキュメントにも掲載されています。

最終更新日時:2023-10-13 11:40

[スポンサードリンク]

Home » Python » xlwingsの使い方 » xlwingsでセルに数値を入力する-Range.valueプロパティ

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

検索


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

.