「python win32 セル名の定義」
という検索キーワードでアクセスがありました。
pywin32・win32com.clientを使って、Excelの名前の定義を行うには、どのようなコードを書けばいいのかを探していた方による検索でしょうか。
PythonからExcelの名前を定義するサンプルスクリプト
Excelファイルが1つ開かれて、ワークシートがアクティブな状態で、以下のスクリプトを実行してください。
xl_app = win32com.client.GetObject(Class='Excel.Application')
xl_app.Range('A1:G7').Name = '名前のサンプル'
アクティブシートのA1:G7セルに「名前のサンプル」という名前が定義されます。
サンプルスクリプトで行っている処理
Rangeオブジェクトに用意されているNameプロパティを使って、VBAから名前を定義できることをご紹介しています。
上記のpywin32・win32comを使ったスクリプトもやっていることは同じです。
Excel VBAであれば
Range("A1:G7").Name = "名前のサンプル"
で済んでしまいますが、Pythonからですから、まずimportを行って、
import win32com.client
次に、Excel.Applicationへの参照を取得してします。
xl_app = win32com.client.GetObject(Class='Excel.Application')
Excel.Applicationへの参照を代入した変数xl_appを経由して利用できる
xl_app.Range('A1:G7').Name = '名前のサンプル'
ExcelのApplication.Rangeプロパティを使って
セルを表すRangeオブジェクトを取得しています。
上記スクリプトの
xl_app.Range('A1:G7').Name = '名前のサンプル'
の部分を、
xl_app.Workbooks(1).Worksheets(1).Range('A1:G7').Name = 'ブックから指定した名前のサンプル'
にすれば、1つ目のブックの、1枚目のワークシートのA1:G7セルに「ブックから指定した名前のサンプル」と名前が定義されます。
- Newer:Excelで割り算の商を切り上げするには-ROUNDUP関数
- Older:Word VBAで表内に画像を挿入する
Home » Python » pywin32・win32comの使い方 » pywin32・win32comでExcelの名前の定義を行う