\

Pythonのライブラリであるopenpyxlを使用してExcelの名前定義(Defined Names)を操作する方法について説明します。

名前定義とは

名前定義は、Excelのセル、セル範囲、数式、または定数値を表す記述的なテキストです。これらは、定数、数式、単一のセル参照、セル範囲、または異なるワークシートにわたる複数のセル範囲を含むことができます。

名前定義の取得

名前定義は、ワークブックのdefined_namesプロパティから取得できます。以下にその例を示します。

from openpyxl import load_workbook

wb = load_workbook(filename="test.xlsx")
defined_names_cat = wb.defined_names['cat']
destinations_cat = defined_names_cat.destinations

このコードでは、load_workbook関数を使用してExcelファイルを読み込み、defined_namesプロパティから特定の名前定義を取得しています。

名前定義の作成

名前定義は、ワークブックのdefined_namesプロパティに追加することで作成できます。以下にその例を示します。

from openpyxl import Workbook
from openpyxl.workbook.defined_name import DefinedName
from openpyxl.utils import quote_sheetname, absolute_coordinate

wb = Workbook()
ws = wb.active

ref = f"{quote_sheetname(ws.title)}!{absolute_coordinate('A1:A5')}"
defn = DefinedName("global_range", attr_text=ref)
wb.defined_names["global_range"] = defn

このコードでは、新しいワークブックを作成し、アクティブなワークシートの特定の範囲を参照する新しい名前定義を作成しています。

以上がPythonとopenpyxlを使用してExcelの名前定義を操作する基本的な方法です。詳細な情報や使用例については、公式のopenpyxlドキュメンテーションを参照してください。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です