import win32com.client as win32
excel = win32.gencache.EnsureDispatch('Excel.Application')
wb = excel.Workbooks.Open(r'Path...\YourFile.xlsx')
excel.Visible = 1
excel.WindowState = win32.constants.xlMaximized # this works for me
Также, когда вы используете префикс пути строки с r''
, вам не нужно экранировать косую черту.
Обновление: Если вы хотите увидеть, какие COM-константы доступны, вам нужно один раз использовать win32.gencache.EnsureDispatch()
, потому что он сгенерирует файл, содержащий все константы из библиотеки типов в объекте с именем win32com .clients.constants. После того, как вы запустили приведенную выше строку кода, папка создается во временном каталоге вашей операционной системы. Например, в Windows временный каталог находится в C:\Users\'UserName'\AppData\Local\Temp
. Там будет папка с именем gen_py
. В моей системе доступные константы, которые вы можете использовать, находятся внутри gen_py\3.7\00020813-0000-0000-C000-000000000046x0x1x7\__init__.py
. Обратите внимание, что папка 3.7 - это текущая версия Python, которую вы используете, поэтому она может отличаться для вас, и следующая папка с именем с номерами также может отличаться. После открытия файла __init__.py
доступные константы находятся внутри класса с именем constants
.
Вот так я и ответил на ваш вопрос. Параметр Максимизировать Excel был в константах класса как xlMaximized =-4137 # from enum XlWindowState
.
Кроме того, после создания папки gen_py
во временной папке вашей операционной системы вы можете использовать константы с win32.Dispatch or win32.DispatchEx
, но если вышеупомянутой папки еще не существует, вы должны один раз использовать win32.gencache.EnsureDispatch()
для создания это.