Home » Python » pywin32・win32comの使い方 » pywin32・win32com.clientを使ってExcelのテキストボックスの枠線を操作する

pywin32・win32com.clientを使ってExcelのテキストボックスの枠線を操作する

動作検証バージョン:Windows 11 Home + Python 3.10.6(64-bit) + pywin32 305 + 64bit Excel

「TextFrame.Characters().Text 境界 python」
といった検索でアクセスがありました。

pywin32・win32com.clientを使って、Excelのワークシート上のテキストボックスの枠線を操作する方法を探していた方による検索ではないかと、私は想像しています。

テキストボックスの枠線を操作するサンプル

テキストボックスの存在するワークシートがアクティブな状態で、以下のスクリプトを実行してください。

import win32com.client as win32

xl_app = win32.GetObject(Class='Excel.Application')
shp = xl_app.ActiveSheet.Shapes(1)
shp.Line.Weight = 10

以下のコードで取得できるテキストボックスの枠線が

shp = xl_app.ActiveSheet.Shapes(1)

10ポイントに設定されます。

Shapeの枠線を操作する階層

拙著『理解するExcel VBA/図形操作の基本』の、「3-3. LineFormatは枠線の書式を表す」で、以下のような階層構造を解説しています。

Worksheetオブジェクト
 └ Shapeオブジェクト
   └ LineFormatオブジェクト( Shape.Lineで取得)

Shape.Lineプロパティで取得できるLineFormatオブジェクトに用意されているWeightプロパティを使って太さを変更しているのが、先述のスクリプトです。

pywin32・win32com.clientを使ったExcel操作は、ライブラリとしてのExcelをPythonを使って行うもので、実質的にExcel VBAと同じ処理を行うわけですから、Excel VBAをあまり理解していない状態でコードを書くのはなかなか難しいはずです。

最終更新日時:2023-06-06 16:56

[スポンサードリンク]

Home » Python » pywin32・win32comの使い方 » pywin32・win32com.clientを使ってExcelのテキストボックスの枠線を操作する

「pywin32・win32comの使い方」の記事一覧

検索


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

.