xlwings

Python API

  1. Top-level functions
    1. xlwings.view(obj, sheet=None, table=True, chunksize=5000)
    2. xlwings.load(index=1, header=1, chunksize=5000)
  2. Apps
    1. classxlwings.main.Apps(impl)
    2. add()
    3. count
    4. keys()
  3. App
    1. classxlwings.App(visible=None, spec=None, add_book=True, impl=None)
    2. activate(steal_focus=False)
    3. api
    4. books
    5. calculate()
    6. calculation
    7. display_alerts
    8. hwnd
    9. kill()
    10. macro(name)
    11. pid
    12. quit()
    13. range(cell1, cell2=None)
    14. screen_updating
    15. selection
    16. startup_path
    17. status_bar
    18. version
    19. visible
  4. Books
    1. active
    2. add()
    3. open(fullname, update_links=None, read_only=None, format=None, password=None, write_res_password=None, ignore_read_only_recommended=None, origin=None, delimiter=None, editable=None, notify=None, converter=None, add_to_mru=None, local=None, corrupt_load=None)
  5. Book
    1. activate(steal_focus=False)
    2. api
    3. app
    4. classmethodcaller()
    5. close()
    6. fullname
    7. name
    8. names
    9. save(path=None)
    10. selection
    11. set_mock_caller()
    12. sheets
    13. to_pdf(path=None, include=None, exclude=None)
  6. Sheets
    1. active
    2. add(name=None, before=None, after=None)
  7. Sheet
    1. activate()
    2. api
    3. autofit(axis=None)
    4. book
    5. cells
    6. charts
    7. clear()
    8. clear_contents()
    9. copy(before=None, after=None, name=None)
    10. delete()
    11. index
    12. name
    13. names
    14. pictures
    15. range(cell1, cell2=None)
    16. render_template(**data)
    17. select()
    18. shapes
    19. tables
    20. to_pdf(path=None)
    21. used_range
    22. visible
  8. Range
    1. address
    2. api
    3. autofit()
    4. clear()
    5. clear_contents()
    6. color
    7. column
    8. column_width
    9. columns
    10. copy(destination=None)
    11. count
    12. current_region
    13. delete(shift=None)
    14. end(direction)
    15. expand(mode=’table’)
    16. formula
    17. formula2
    18. formula_array
    19. get_address(row_absolute=True, column_absolute=True, include_sheetname=False, external=False)
    20. has_array
    21. height
    22. hyperlink
    23. insert(shift=None, copy_origin=’format_from_left_or_above’)
    24. left
    25. merge(across=False)
    26. merge_area
    27. merge_cells
    28. name
    29. number_format
    30. offset(row_offset=0, column_offset=0)
    31. options(convert=None, **options)
    32. paste(paste=None, operation=None, skip_blanks=False, transpose=False)
    33. raw_value
    34. resize(row_size=None, column_size=None)
    35. row
    36. row_height
    37. rows
    38. select()
    39. shape
    40. sheet
    41. size
    42. table
    43. top
    44. unmerge()
    45. value
    46. width
    47. wrap_text
  9. RangeRows
    1. autofit()
    2. count
  10. RangeColumns
    1. autofit()
    2. count
  11. Shapes
    1. api
    2. count
  12. Shape
    1. activate()
    2. api
    3. delete()
    4. height
    5. left
    6. name
    7. parent
    8. scale_height(factor, relative_to_original_size=False, scale=’scale_from_top_left’)
    9. text
    10. top
    11. type
    12. width
  13. Charts
    1. add(left=0, top=0, width=355, height=211)
    2. api
    3. count
  14. Chart
    1. api
    2. chart_type
    3. delete()
    4. height
    5. left
    6. name
    7. parent
    8. set_source_data(source)
    9. top
    10. width
  15. Pictures
    1. add(image, link_to_file=False, save_with_document=True, left=0, top=0, width=None, height=None, name=None, update=False, scale=1)
    2. api
    3. count
  16. Picture
    1. api
    2. delete()
    3. height
    4. left
    5. name
    6. parent
    7. top
    8. update(image)
    9. width
  17. Names
    1. add(name, refers_to)
    2. api
    3. count
  18. Name
    1. api
    2. delete()
    3. name
    4. refers_to
    5. refers_to_range
  19. Tables
      1. add(source=None, name=None, source_type=None, link_source=None, has_headers=True, destination=None, table_style_name=’TableStyleMedium2′)
  20. Table
      1. api
      2. data_body_range
      3. display_name
      4. header_row_range
      5. insert_row_range
      6. name
      7. parent
      8. range
      9. show_autofilter
      10. show_headers
      11. show_table_style_column_stripes
      12. show_table_style_first_column
      13. show_table_style_last_column
      14. show_table_style_row_stripes
      15. show_totals
      16. table_style
      17. totals_row_range
  21. Font
      1. api
      2. bold
      3. color
      4. italic
      5. name
      6. size
  22. Characters
      1. api
      2. font
      3. text
  23. Markdown
  24. MarkdownStyle

Top-level functions

xlwings.view(obj, sheet=None, table=True, chunksize=5000)

>>> import xlwings as xw
>>> import pandas as pd
>>> import numpy as np
>>> df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])
>>> xw.view(df)
load を参考

xlwings.load(index=1, header=1, chunksize=5000)

Loads the selected cell(s) of the active workbook into a pandas DataFrame. If you select a single cell that has adjacent cells, the range is auto-expanded (via current region) and turned into a pandas DataFrame. If you don’t have pandas installed, it returns the values as nested lists.
>>> import xlwings as xw
>>> xw.load()
view を参考

オブジェクト モデル

Apps

classxlwings.main.Apps(impl)

>>> import xlwings as xw
>>> xw.apps
pps([<Excel App 1668>, <Excel App 1644>])
active
戻り値はアクティブなappです。

add()

新規Appを作成し戻します。新しいAppはアクティブになります。

count

戻り値はAppオブジェクトの数です。

keys()

Appsコレクションのキーとなる、各ExcelインスタンスのPIDを返します。

App

classxlwings.App(visible=None, spec=None, add_book=True, impl=None)

appはExcelインスタンスに対応します。 新しいExcelインスタンスは次のように生成します:

>>> import xlwings as xw
>>> app1 = xw.App()
>>> app2 = xw.App()
appオブジェクトは apps コレクションのメンバーです:
>>> xw.apps
Apps([<Excel App 1668>, <Excel App 1644>])
>>> xw.apps[1668]  # get the available PIDs via xw.apps.keys()
<Excel App 1668>
>>> xw.apps.active
<Excel App 1668>

activate(steal_focus=False)

Exel appをアクティブにします。

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

books

現在開かれているすべてのBookオブジェクトのコレクション。

calculate()

開いているすべてのブックで再計算します。

calculation

計算モードを表す値を返すまたは設定します。 計算モード: ‘manual’、 ‘automatic’、 ‘semiautomatic’

>>> import xlwings as xw
>>> wb = xw.Book()
>>> wb.app.calculation = 'manual'

display_alerts

デフォルト値はTrueです。コード実行中のプロンプトやアラート メッセージを非表示にするには、Falseを設定します。Falseに設定した場合、メッセージがレスポンスを必要とするときにはExcelはデフォルト値で返します。

hwnd

Windowハンドルを返します(Windowsのみ)。

kill()

プロセスをキルしてExcelアプリを強制的に終了します。

macro(name)

特定のワークブックではない、アドイン等に含まれるExcel VBAのSubやFunctionを実行します。
次のVBA関数は
Function MySum(x, y)
MySum = x + y
End Function
このように使うことができます:

import xlwings as xw
app = xw.App()
my_sum = app.macro('MySum')
my_sum(1, 2)
3

pid

appのPIDを返します。

quit()

ワークブックを保存せずにアプリケーションを終了します。

range(cell1, cell2=None)

アクティブブックのアクティブシートのRangeオブジェクトを返します。Range() を参照。

screen_updating

スクリプトの処理を速くするために、スクリーンの更新を止めます。スクリプトが何をしているのかが見えなくなる代わりに、速くなります。スクリプト終了時にTrueに戻すことを忘れないでください。

selection

選択しているセルをRangeとして返します。

startup_path

xlwings addin install コマンドでxlwingsアドインをコピーした先のXLSTART フォルダーのパスを返します。

status_bar

ステータスバーの値を取得または設定します。Excelがステータスバーをコントロールしている場合には False を返します。

version

Excelのバージョン番号のオブジェクトを返します。
>>> import xlwings as xw
>>> xw.App().version
VersionNumber(‘15.24’)
>>> xw.apps[10559].version.major
15

visible

Excelを表示するか否かを True または False で取得または設定します。

Books

classxlwings.main.Books(impl)
すべての book オブジェクトのコレクション:
>>> import xlwings as xw
>>> xw.books # active app
Books([<Book [Book1]>, <Book [Book2]>])
>>> xw.apps[10559].books # specific app, get the PIDs via xw.apps.keys()
Books([<Book [Book1]>, <Book [Book2]>])

active

アクティブなBookを返します。

add()

新しいBookを作成し、返します。新しいBookはアクティブになります。

open(fullname, update_links=None, read_only=None, format=None, password=None, write_res_password=None, ignore_read_only_recommended=None, origin=None, delimiter=None, editable=None, notify=None, converter=None, add_to_mru=None, local=None, corrupt_load=None)

開いていなければ、ブックを開き返します。既に開いていれば、エラーは出さずにBookオブジェクトを返します。

Book

classxlwings.Book(fullname=None, update_links=None, read_only=None, format=None, password=None, write_res_password=None, ignore_read_only_recommended=None, origin=None, delimiter=None, editable=None, notify=None, converter=None, add_to_mru=None, local=None, corrupt_load=None, impl=None)
bookオブジェクトは books コレクションのメンバーです

  import xlwings as xw
  xw.books[0]
  <Book [Book1]>
 app = xw.App()  # or something like xw.apps[10559] for existing apps, get the PIDs via xw.apps.keys()
app.books['Book1']
xw.Book	xw.books
New book	
xw.Book()	
xw.books.add()
Unsaved book	xw.Book('Book1')	xw.books['Book1']
Book by (full)name	xw.Book(r'C:/path/to/file.xlsx')	xw.books.open(r'C:/path/to/file.xlsx')

activate(steal_focus=False)

ブックをアクティブにします。
パラメータ: steal_focus (bool, default False) — Trueの場合、最も前面のウインドウにし、フォーカスをPythonからExcelに変更します。

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

app

ブックを開いているappオブジェクトを返します。

classmethodcaller()

Pythonの関数がExcelから RunPython で呼び出されている場合に、呼び出し元のブックを参照します。Excelから呼び出されている関数の中に入れてください。
import xlwings as xw
def my_macro():
wb = xw.Book.caller()
wb.sheets[0].range(‘A1’).value = 1
Pythonやデバッグ時にそのようなコードを簡単に実行するには、xw.Book.set_mock_caller() を使用してください。

close()

保存せずにブックを閉じます。

fullname

ディスク上のパスを含むオブジェクトの名前を文字列で返します。読み取り専用。
macro(name)
Excel VBA内のSubまたはFunctionを実行します。

パラメータ: name (Name of Sub or Function with or without module name, e.g. ‘Module1.MyMacro’ or ‘MyMacro’) —

次のVBA関数は

Function MySum(x, y)
    MySum = x + y
End Function
このように使うことができます:

>>> import xlwings as xw
>>> wb = xw.books.active
>>> my_sum = wb.macro('MySum')
>>> my_sum(1, 2)
3

name

ブックの名前を文字列で返します。

names

ブックに含まれる(シート固有のものを含む)すべての名前の定義を表すnamesコレクションを返します。

save(path=None)

ワークブックを保存します。pathが指定されれば、ExcelのSaveAs()と同様に動作します。pathの指定がなく保存されていないファイルの場合は、カレント ワーキング ディレクトリーに現在のファイル名で保存されます。存在するファイルはプロンプトなしで上書きされます。

>>> import xlwings as xw
>>> wb = xw.Book()
>>> wb.save()
>>> wb.save(r'C:\path\to\new_file_name.xlsx')

selection

選択しているセルをRangeとして返します。

set_mock_caller()

コードがExcelから RunPython で呼び出されるのではなく、Pythonから呼び出されている場合に、Excelファイルを xw.Book.caller() として利用するために設定します。

This code runs unchanged from Excel via RunPython and from Python directly
import os
import xlwings as xw

def my_macro():
    sht = xw.Book.caller().sheets[0]
    sht.range('A1').value = 'Hello xlwings!'

if __name__ == '__main__':
    xw.Book('file.xlsm').set_mock_caller()
    my_macro()

sheets

ブック内のすべてのsheetを表すsheetsコレクションを返します。

to_pdf(path=None, include=None, exclude=None)

Excelワークブック全体またはシートの一部をPDFファイルにエクスポートします。非表示のシートを印刷するには、明示的に include 引数に含める必要があります。
>>> wb = xw.Book()
>>> wb.sheets[0][‘A1’].value = ‘PDF’
>>> wb.to_pdf()

Sheets

classxlwings.main.Sheets(impl)
すべての sheet オブジェクトのコレクション:

>>> import xlwings as xw
>>> xw.sheets  # active book
Sheets([<Sheet [Book1]Sheet1>, <Sheet [Book1]Sheet2>])
>>> xw.Book('Book1').sheets  # specific book
Sheets([<Sheet [Book1]Sheet1>, <Sheet [Book1]Sheet2>])

active

アクティブなSheetを返します。

add(name=None, before=None, after=None)

新しいSheetを作成し、アクティブにします。

Sheet

classxlwings.Sheet(sheet=None, impl=None)
sheetオブジェクトは sheets コレクションのメンバーです:

>>> import xlwings as xw
>>> wb = xw.Book()
>>> wb.sheets[0]
<Sheet [Book1]Sheet1>
>>> wb.sheets['Sheet1']
<Sheet [Book1]Sheet1>
>>> wb.sheets.add()
<Sheet [Book1]Sheet2>

activate()

シートをアクティブにして返します。

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

autofit(axis=None)

シート全体の列、行または両方の幅を自動調整します。

>>> import xlwings as xw
>>> wb = xw.Book()
>>> wb.sheets['Sheet1'].autofit('c')
>>> wb.sheets['Sheet1'].autofit('r')
>>> wb.sheets['Sheet1'].autofit()

book

このシートを含むBookを返します。読み取り専用。

cells

Sheetオブジェクト上のすべてのセルを表すRangeオブジェクトを返します(現在使っているセルではありません)。

charts

Charts を参照

clear()

シート内のすべての値と書式をクリアーします。

clear_contents()

シート内のすべての値をクリアーしますが、書式は残します。

copy(before=None, after=None, name=None)

同一ブック内または新規ブックにシートをコピーします。デフォルトでは、同一ブックの一番右側にコピーします。コピー後のシートを返します。

delete()

シートを削除します。

index

シートのインデックスを返します(Excel同様1から始まるもの)。

name

シート名を取得または設定します。

names

このシート内のすべての名前(“SheetName!” から始まるよう定義された名前)を表すnamesコレクションを返します。

pictures

Pictures を参照

range(cell1, cell2=None)

アクティブなブックのアクティブなシートからRangeオブジェクトを返します。Range() を参照。

render_template(**data)

このメソッドはxlwings PRO でのみ使用できます。

>>> import xlwings as xw
>>> book = xw.Book()
>>> book.sheets[0]['A1:A2'].value = '{{ myvar }}'
>>> book.sheets[0].render_template(myvar='test')
See also xlwings.pro.reports.create_report()

select()

シートを選択します。このメソッドはブックがアクティブのときのみ機能します。

shapes

Shapes を参照

tables

Tables を参照

to_pdf(path=None)

シートをPDFファイルで出力します。

>>> wb = xw.Book()
>>> sheet = wb.sheets[0]
>>> sheet['A1'].value = 'PDF'
>>> sheet.to_pdf()
xlwings.Book.to_pdf() を参照

used_range

シートで使用しているRange。

visible

シートの表示/非表示(bool値)を取得または設定します。

Range

classxlwings.Range(cell1=None, cell2=None, **options)
セルまたはセル範囲を表すRangeオブジェクトを返します。

パラメータ:
cell1 (str or tuple or Range) — 左上セルをA1表記、インデックスのタプル、xw.Rangeオブジェクトのいずれかで指定します。
‘A1:B2’のようにrangeオペレーター(コロンのこと)での指定も可。
cell2 (str or tuple or Range, default None) — 左下セルをA1表記、インデックスのタプル、xw.Rangeオブジェクトのいずれかで指定します。

アクティブなシートの場合:

import xlwings as xw
xw.Range('A1')
xw.Range('A1:C3')
xw.Range((1,1))
xw.Range((1,1), (3,3))
xw.Range('NamedRange')
xw.Range(xw.Range('A1'), xw.Range('B2'))
シートを指定する場合:

xw.books['MyBook.xlsx'].sheets[0].range('A1')
add_hyperlink(address, text_to_display=None, screen_tip=None)
対象のRange(単独のセル)にハイパーリンクを追加します

address

参照先を表す文字列を返す。get_address() を使えば細かいパラメーターを設定できます。

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

autofit()

Rangeに含まれるすべてのセルの幅と高さを自動調整します。

列の幅のみを自動調整するには、 xw.Range('A1:B2').columns.autofit() とします。
行の高さのみを自動調整するには、 xw.Range('A1:B2').rows.autofit() とします。

clear()

Rangeの値と書式をクリアーします。

clear_contents()

Rangeの値をクリアーしますが、書式は保持します。

color

Rangeの背景色を取得または設定します。

背景色を設定するには、RGBタプル (0, 0, 0) または色の定数を使用します。背景色を削除するには、 None を設定します。以下の例をご覧ください。Examples.

戻り値:	RGB
戻り値の型:	tuple
例

>>> import xlwings as xw
>>> wb = xw.Book()
>>> xw.Range('A1').color = (255,255,255)
>>> xw.Range('A2').color
(255, 255, 255)
>>> xw.Range('A2').color = None
>>> xw.Range('A2').color is None
True

column

Rangeに含まれる最初の列の番号を返します。読み取り専用。
戻り値:
戻り値の型: Integer

column_width

Rangeの幅を文字数で取得または設定します。

columns

指定したRange内の列の集合を表す RangeColumns オブジェクトを返します。

copy(destination=None)

貼り付け先のRangeまたはクリップボードにRangeをコピーします。

count

セルの数を返します。

current_region

このプロパティは、空白行、空白列またはワークシートの端のいずれかの組み合わせで囲まれた(空白行等を含まない)Rangeオブジェクトを返します。Windowsでは Ctrl-* (訳注: Ctrl-a の間違いか?)、Macでは Shift-Ctrl-Space に対応します。

delete(shift=None)

セルまたはセル範囲を削除します。

end(direction)

データが入っている範囲の最後のセルを表すRangeオブジェクトを返します。Ctrl+Up、 Ctrl+down、 Ctrl+left または Ctrl+rightと同じものです。

>>> import xlwings as xw
>>> wb = xw.Book()
>>> xw.Range('A1:B2').value = 1
>>> xw.Range('A1').end('down')
<Range [Book1]Sheet1!$A$2>
>>> xw.Range('B2').end('right')
<Range [Book1]Sheet1!$B$2>
バージョン 0.9.0 で追加.

expand(mode=’table’)

指定したmodeに応じてRangeを拡張します。左上セルが空白の場合は無視されます ( Range.end() とは異なる)。

>>> import xlwings as xw
>>> wb = xw.Book()
>>> xw.Range('A1').value = [[None, 1], [2, 3]]
>>> xw.Range('A1').expand().address
$A$1:$B$2
>>> xw.Range('A1').expand('right').address
$A$1:$B$1

formula

指定したRangeのformulaプロパティを取得または設定します。

formula2

指定したRangeのformula2プロパティを取得または設定します。

formula_array

指定したRangeのarray formulaプロパティを取得または設定します。

get_address(row_absolute=True, column_absolute=True, include_sheetname=False, external=False)

指定したフォーマットでRangeのアドレスを返します。すべてデフォルトのままなら代わりに address を使えます。
>>> import xlwings as xw
>>> wb = xw.Book()
>>> xw.Range((1,1)).get_address()
‘AA1′
>>> xw.Range((1,1)).get_address(False, False)
‘A1’
>>> xw.Range((1,1), (3,3)).get_address(True, False, True)
‘Sheet1!A1:C1:C3′
>>> xw.Range((1,1), (3,3)).get_address(True, False, external=True)
‘[Book1]Sheet1!A1:C1:C3′

has_array

配列数式の一部かどうかを返します。

height

Rangeの高さをポイント単位で返します。読み取り専用。

指定したRange(単独セルに限る)のハイパーリンク先のアドレスを返します。

>>> import xlwings as xw
>>> wb = xw.Book()
>>> xw.Range('A1').value
'www.xlwings.org'
>>> xw.Range('A1').hyperlink
'http://www.xlwings.org'

insert(shift=None, copy_origin=’format_from_left_or_above’)

シートにセルまたはセル範囲を挿入します。

>>> import xlwings as xw
>>> wb = xw.Book()
>>> rng = xw.Range('A1:E4')
>>> rng.last_cell.row, rng.last_cell.column
(4, 5)

left

A列の左端からRangeの左端までの距離をポイント単位で返します。読み取り専用。

merge(across=False)

指定したRangeオブジェクトから結合セルを作ります。

merge_area

指定したRangeを含む結合セルを表すRangeオブジェクトを返します。指定したRangeが結合セルに含まれない場合、指定したRangeを返します。

merge_cells

Rangeに結合セルが含まれていれば True 、そうでなければ False を返します。

name

Rangeの名前を設定または取得します。

number_format

Rangeの number_format を取得または設定します。

例

>>> import xlwings as xw
>>> wb = xw.Book()
>>> xw.Range('A1').number_format
'General'
>>> xw.Range('A1:C3').number_format = '0.00%'
>>> xw.Range('A1:C3').number_format
'0.00%'

offset(row_offset=0, column_offset=0)

指定したRangeからオフセットしたRangeを表すRangeオブジェクトを返します。

options(convert=None, **options)

コンバーターおよびそのオプションの設定をします。コンバーターは、読み込み時と書き込み時の両方で、どのようにExcelのRangeまたはその値が変換されるかを定義します。コンバーターが明示的に指定されなければ、ベース コンバーターが適用されます。 コンバーターおよびオプション を参照。

paste(paste=None, operation=None, skip_blanks=False, transpose=False)

クリップボードから指定したRangeに、Rangeを貼り付けます。

raw_value

xlwingsのデータ クリーニング/変換をせずに、エンジン(pywin32 または appscript)から直接値を取得または設定します。速度が問題になるときには役立つかもしれませんがエンジンに依存するため、クロスプラットフォームの互換性は失われる可能性があります。

resize(row_size=None, column_size=None)

指定したRangeをリサイズします

row

指定したrangeの最初の行番号を返します。読み取り専用。

row_height

Rangeの高さをポイント単位で取得または設定します。Range内のすべての高さが同じ場合は、その高さを返します。 Rangeの高さが異なる場合、Noneを返します。
row_heightは次の範囲内でなければなりません: 0 <= row_height <= 409.5

rows

指定したRangeに含まれるrowの集合を表す RangeRows オブジェクトを返します。

select()

Rangeを選択します。selectはアクティブ ワークブックでのみ機能します。

shape

Rangeの次元を表すタプル

sheet

Rangeが属するSheetオブジェクトを返します。

size

Rangeに含まれる要素数を返します。

table

Rangeを含んでいるテーブル オブジェクトを返します。Rangeがテーブルに含まれない場合は None を返します。

top

1行目の上端からrangeの上端までの距離をポイント単位で返します。読み取り専用。

unmerge()

結合セルを単独のセルに分割します。

value

Gets and sets the values for the given Range. See see xlwings.Range.options() about how to set options, e.g. to transform it into a Daxlwings.Range.options() を参照。

width

幅をポイント単位で返します。読み取り専用。

wrap_text

Returns True if the wrap_text property is enabled and False if it’s disabled. If not all cells have the same value in a range, on Windows it returns None and on macOS False.

RangeRows

classxlwings.RangeRows(rng)
Rangeの行の集合を表します。このクラスを直接生成しないでください。代わりに Range.rows を使用してください。

import xlwings as xw

rng = xw.Range('A1:C4')

assert len(rng.rows) == 4  # or rng.rows.count

rng.rows[0].value = 'a'

assert rng.rows[2] == xw.Range('A3:C3')
assert rng.rows(2) == xw.Range('A2:C2')

for r in rng.rows:
    print(r.address)

autofit()

行の高さを自動調整します。

count

行の数を返します。

RangeColumns

classxlwings.RangeColumns(rng)
Rangeの列の集合を表します。このクラスを直接生成しないでください。代わりに Range.columns を使用してください。

import xlwings as xw

rng = xw.Range('A1:C4')

assert len(rng.columns) == 3  # or rng.columns.count

rng.columns[0].value = 'a'

assert rng.columns[2] == xw.Range('C1:C4')
assert rng.columns(2) == xw.Range('B1:B4')

for c in rng.columns:
    print(c.address)

autofit()

列の幅を自動調整します。

count

列の数を返します。

Shapes

classxlwings.main.Shapes(impl)
指定したシート内のすべての shape オブジェクトのコレクション:

import xlwings as xw
xw.books[‘Book1’].sheets[0].shapes
Shapes([<Shape ‘Oval 1’ in <Sheet [Book1]Sheet1>>, <Shape ‘Rectangle 1’ in <Sheet [Book1]Sheet1>>])

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

count

コレクションに含まれるオブジェクトの数を返します。

Shape

classxlwings.Shape(*args, **options)
Shapeオブジェクトは shapes コレクションのメンバーです:

>>> import xlwings as xw
>>> sht = xw.books['Book1'].sheets[0]
>>> sht.shapes[0]  # or sht.shapes['ShapeName']
<Shape 'Rectangle 1' in <Sheet [Book1]Sheet1>>

activate()

Shapeをアクティブにします。

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

delete()

Shapeを削除します。

height

Shapeの高さを表すポイント単位の数値を取得または設定します。

left

Shapeの水平位置を表すポイント単位の数値を取得または設定します。

name

Shapeの名前を取得または設定します。

parent

Shapeの親オブジェクトを返します。

scale_height(factor, relative_to_original_size=False, scale=’scale_from_top_left’)

text

Shapeのテキストを取得または設定します。

top

Shapeの垂直位置を表すポイント単位の数値を取得または設定します。

type

Shapeの種類を返します。

width

Shapeの幅を表すポイント単位の数値を取得または設定します。

Charts

classxlwings.main.Charts(impl)
指定したシート内のすべての chart オブジェクトのコレクション:

>>> import xlwings as xw
>>> xw.books['Book1'].sheets[0].charts
Charts([<Chart 'Chart 1' in <Sheet [Book1]Sheet1>>, <Chart 'Chart 1' in <Sheet [Book1]Sheet1>>])

add(left=0, top=0, width=355, height=211)

指定したシートに新しいChartを作成します。

>>> import xlwings as xw
>>> sht = xw.Book().sheets[0]
>>> sht.range('A1').value = [['Foo1', 'Foo2'], [1, 2]]
>>> chart = sht.charts.add()
>>> chart.set_source_data(sht.range('A1').expand())
>>> chart.chart_type = 'line'
>>> chart.name
'Chart1'

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

count

コレクションに含まれるオブジェクトの数を返します。

Chart

classxlwings.Chart(name_or_index=None, impl=None)
Chartオブジェクトは charts コレクションのメンバーです:

>>> import xlwings as xw
>>> sht = xw.books['Book1'].sheets[0]
>>> sht.charts[0]  # or sht.charts['ChartName']
<Chart 'Chart 1' in <Sheet [Book1]Sheet1>>

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

chart_type

Chartの種類を取得または設定します。

delete()

Chartを削除します。

height

Chartの高さを表すポイント単位の数値を取得または設定します。

left

Chartの水平位置を表すポイント単位の数値を取得または設定します。

name

Chartの名前を取得または設定します。

parent

Chartの親オブジェクトを返します。

set_source_data(source)

Chartのデータソース範囲を設定します。

top

Chartの垂直位置を表すポイント単位の数値を取得または設定します。

width

Chartの幅を表すポイント単位の数値を取得または設定します。

Pictures

classxlwings.main.Pictures(impl)
指定したシート内のすべての picture オブジェクトのコレクション:

>>> import xlwings as xw
>>> xw.books['Book1'].sheets[0].pictures
Pictures([<Picture 'Picture 1' in <Sheet [Book1]Sheet1>>, <Picture 'Picture 2' in <Sheet [Book1]Sheet1>>])

指定したシートにPictureを追加します。

1.Picture
>>> import xlwings as xw
>>> sht = xw.Book().sheets[0]
>>> sht.pictures.add(r'C:\path\to\file.jpg')
<Picture 'Picture 1' in <Sheet [Book1]Sheet1>>
2.Matplotlib
>>> import matplotlib.pyplot as plt
>>> fig = plt.figure()
>>> plt.plot([1, 2, 3, 4, 5])
>>> sht.pictures.add(fig, name='MyPlot', update=True)
<Picture 'MyPlot' in <Sheet [Book1]Sheet1>>

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

count

コレクションに含まれるオブジェクトの数を返します。

Picture

classxlwings.Picture(impl=None)
Pictureオブジェクトは pictures コレクションのメンバーです:

>>> import xlwings as xw
>>> sht = xw.books['Book1'].sheets[0]
>>> sht.pictures[0]  # or sht.charts['PictureName']
<Picture 'Picture 1' in <Sheet [Book1]Sheet1>>

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

delete()

Picureを削除します。

height

Pictureの高さを表すポイント単位の数値を取得または設定します。

left

Pictureの水平位置を表すポイント単位の数値を取得または設定します。

name

Picrtureの名前を取得または設定します。

parent

Pictureの親オブジェクトを返します。

top

Pictureの垂直位置を表すポイント単位の数値を取得または設定します。

update(image)

既存のPictureを新しいPictureで置き換えます。既存のPictureのアトリビュートは新しいPictureに引き継がれます。

width

Pictureの幅を表すポイント単位の数値を取得または設定します。

Names

classxlwings.main.Names(impl)
指定したシート内のすべての name オブジェクトのコレクション:

import xlwings as xw
sht = xw.books['Book1'].sheets[0]
sht.names
[<Name 'MyName': =Sheet1!$A$3>]

add(name, refers_to)

セル範囲に新しい名前を定義します。

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

count

コレクションに含まれるオブジェクトの数を返します。

Name

classxlwings.Name(impl)
Pictureオブジェクトは names コレクションのメンバーです:

import xlwings as xw
sht = xw.books['Book1'].sheets[0]
sht.names[0]  # or sht.names['MyName']
<Name 'MyName': =Sheet1!$A$3>

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

delete()

名前を削除します。

name

Nameオブジェクトの名前を取得または設定します。

refers_to

名前の参照先を定義する数式を取得または設定します。数式はA1形式でイコールで始まります。

refers_to_range

Nameオブジェクトが参照するRangeオブジェクトを返します。

Tables

classxlwings.main.Tables(impl)
指定したシート内のすべての table オブジェクトのコレクション:
import xlwings as xw
xw.books['Book1'].sheets[0].tables
Tables([<Table 'Table1' in <Sheet [Book11]Sheet1>>, <Table 'Table2' in <Sheet [Book11]Sheet1>>])

指定したシートに新しいTableを作成します。

`import xlwings as xw`
`sheet = xw.Book().sheets[0]`
`sheet['A1'].value = [['a', 'b'], [1, 2]]`
`table = sheet.tables.add(source=sheet['A1'].expand(), name='MyTable')`
`table`
`<Table 'MyTable' in <Sheet [Book1]Sheet1>>`

Table

classxlwings.main.Table(*args, **options)
tableオブジェクトは tables コレクションのメンバーです:

`import xlwings as xw`
`sht = xw.books['Book1'].sheets[0]`
`sht.tables[0]  # or sht.tables['TableName']`
`<Table 'Table 1' in <Sheet [Book1]Sheet1>>`

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

data_body_range

ヘッダー行を除く、値のrangeを表すxlwingsのrangeオブジェクトを返します。

display_name

指定したTableオブジェクトの表示名を取得または設定します。

header_row_range

ヘッダーのrangeを表すxlwingsのrangeオブジェクトを返します。

insert_row_range

データが挿入される行を表すxlwingsのrangeオブジェクトを返します。このメソッドはテーブルが空の場合のみ利用できます。それ以外の場合は None を返します。

name

Tableの名前を取得または設定します。

parent

tableの親オブジェクトを返します。

range

tableのxlwingsのrangeオブジェクトを返します。

show_autofilter

オートフィルターのオン/オフを True または False で切り替える(読み取り/書き込み boolean)。

show_headers

ヘッダーの表示または非表示(読み取り/書き込み)

show_table_style_column_stripes

列方向ストライプのテーブル スタイルが使用されているかを取得または設定します(読み取り/書き込み boolean)。

show_table_style_first_column

最初の列が書式設定されているかを取得または設定します(読み取り/書き込み boolean)。

show_table_style_last_column

最後の列が書式設定されているかを取得または設定します(読み取り/書き込み boolean)。

show_table_style_row_stripes

行方向ストライプのテーブル スタイルが使用されているかを取得または設定します(読み取り/書き込み boolean)。

show_totals

集計行の表示/非表示のブール値を取得または設定します。

table_style

テーブル スタイルを取得または設定します。設定可能な値は Tables.add を参照。

totals_row_range

集計行を表すxlwingsのrangeオブジェクトを返します。

Font

classxlwings.main.Font(impl)
The font object can be accessed as an attribute of the range or shape object.
mysheet[‘A1’].font
mysheet.shapes[0].font

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

bold

Returns or sets the bold property (boolean).

sheet['A1'].font.bold = True
sheet['A1'].font.bold
True

color

Returns or sets the color property (tuple).

sheet['A1'].font.color = (255, 0, 0) # RGB tuple
sheet['A1'].font.color
(255, 0, 0)

italic

Returns or sets the italic property (boolean).

sheet['A1'].font.italic = True
sheet['A1'].font.italic
True

name

Returns or sets the name of the font (str).

sheet['A1'].font.name = 'Calibri'
sheet['A1'].font.name
Calibri

size

Returns or sets the size (float).

sheet['A1'].font.size = 13
sheet['A1'].font.size
13

Characters

classxlwings.main.Characters(impl)
The characters object can be accessed as an attribute of the range or shape object.

mysheet['A1'].characters
mysheet.shapes[0].characters

api

使用しているエンジンのネイティブ オブジェクト(pywin32 オブジェクトまたは appscript オブジェクト)を返します。

font

Returns or sets the text property of a characters object.

sheet['A1'].characters[1:3].font.bold = True
sheet['A1'].characters[1:3].font.bold
True

text

Returns or sets the text property of a characters object.

sheet['A1'].value = 'Python'
sheet['A1'].characters[:3].text
Pyt

Markdown

MarkdownStyle

コメント

amazon 本日のタイムセール Time Sale
現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 動画290本28.5時間 \24,000 (毎月月初数日間は 1800円)
楽天モバイル、妻がiphone SE2、息子がiphone11で使ってます。一番安くて通信品質イマイチ
タイトルとURLをコピーしました