pywin32를 사용하여 MS Excel에서 TextBox의 이름을 얻으 려 노력하고 있습니다. 매크로 기록을 시도했지만 다음 팁을 얻었지만 VBA에서 Python으로 변환 할 수는 없습니다. 아래의 샘플에서는 텍스트 상자를 선택하고 이름을 변경합니다. 이름으로 이름을 참조 할 수 있어야하며 가까운 날에이 사실을 알 수 있습니다.Python win32com - 이름으로 TextBox를 호출 하시겠습니까?
ActiveSheet.Shapes.Range(Array("TextBox 2")).Select
Selection.ShapeRange.Name = "TextBox 3"
이것은 내가 지금까지 파이썬에서 가지고있는 것입니다.
import win32com.client as win32
excel = win32.gencache.EnsureDispatch('Excel.Application')
wb = excel.Workbooks.Open("C:\\users\\khillstr\\Testing\\Scripts\\Book1.xlsx")
excel.Visible = True
ws = wb.Worksheets
for w in ws:
print w.Name
w.Activate
canvas = w.Shapes
for shp in canvas:
if shp.TextFrame.Characters:
print shp.TextFrame2.TextRange
비슷한 문제가 있습니다. Excel의 텍스트 상자에서 데이터를 읽어야하지만 Windows가 실행되지 않아 win32com 라이브러리를 사용할 수 없다고 생각합니다. 누구든지 * NIX에서 작동 할 다른 솔루션을 알고 있습니까? – Kasapo