Skip to content

Commit 35c19f1

Browse files
committed
Update the base classes of the coclasses
This allows us to use exceltypes.Application as the main type instead of the _Application interface (which is the correct type for the result of Dispatch("Excel.Application")).
1 parent 5673918 commit 35c19f1

File tree

4 files changed

+25
-28
lines changed

4 files changed

+25
-28
lines changed

README.md

+4-5
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,15 @@ completion in editors like PyCharm or Visual Studio Code.
99

1010
Example usage:
1111

12-
# _Application is the main "Excel.Application" class
13-
from exceltypes import _Application
12+
# Application is the main "Excel.Application" class
13+
from exceltypes import Application
1414

1515
# If using win32com directly
1616
import win32com.client
17-
xl: _Application = win32com.client.Dispatch("Excel.Application")
17+
xl: Application = win32com.client.Dispatch("Excel.Application")
1818

1919
# Or if using pyxll
2020
import pyxll
21-
xl: _Application = pyxll.xl_app()
21+
xl: Application = pyxll.xl_app()
2222

2323
For details of PyXLL please see https://www.pyxll.com.
24-

exceltypes/gen_py/_00020813_0000_0000_C000_000000000046x0x1x9.py

+7-8
Original file line numberDiff line numberDiff line change
@@ -27743,26 +27743,25 @@ def __iter__(self):
2774327743
...
2774427744

2774527745
# This CoClass is known by the name 'Excel.Application.16'
27746-
class Application(typing.Protocol): # A CoClass
27746+
class Application(_Application): # A CoClass
2774727747
...
2774827748

2774927749
# This CoClass is known by the name 'Excel.Chart.8'
27750-
class Chart(typing.Protocol): # A CoClass
27750+
class Chart(_Chart): # A CoClass
2775127751
...
2775227752

27753-
class Global(typing.Protocol): # A CoClass
27753+
class Global(_Global): # A CoClass
2775427754
...
2775527755

27756-
class OLEObject(typing.Protocol): # A CoClass
27756+
class OLEObject(_OLEObject): # A CoClass
2775727757
...
2775827758

27759-
class QueryTable(typing.Protocol): # A CoClass
27759+
class QueryTable(_QueryTable): # A CoClass
2776027760
...
2776127761

27762-
class Workbook(typing.Protocol): # A CoClass
27762+
class Workbook(_Workbook): # A CoClass
2776327763
...
2776427764

2776527765
# This CoClass is known by the name 'Excel.Sheet.8'
27766-
class Worksheet(typing.Protocol): # A CoClass
27766+
class Worksheet(_Worksheet): # A CoClass
2776727767
...
27768-

exceltypes/gen_py/_2DF8D04C_5BFA_101B_BDE5_00AA0044DE52x0x2x8.py

+9-9
Original file line numberDiff line numberDiff line change
@@ -10838,30 +10838,30 @@ class _SensitivityLabelEvents:
1083810838
...
1083910839

1084010840

10841-
class CommandBarButton(typing.Protocol): # A CoClass
10841+
class CommandBarButton(_CommandBarButton): # A CoClass
1084210842
...
1084310843

10844-
class CommandBarComboBox(typing.Protocol): # A CoClass
10844+
class CommandBarComboBox(_CommandBarComboBox): # A CoClass
1084510845
...
1084610846

10847-
class CommandBars(typing.Protocol): # A CoClass
10847+
class CommandBars(_CommandBars): # A CoClass
1084810848
...
1084910849

10850-
class CustomTaskPane(typing.Protocol): # A CoClass
10850+
class CustomTaskPane(_CustomTaskPane): # A CoClass
1085110851
...
1085210852

10853-
class CustomXMLPart(typing.Protocol): # A CoClass
10853+
class CustomXMLPart(_CustomXMLPart): # A CoClass
1085410854
...
1085510855

10856-
class CustomXMLParts(typing.Protocol): # A CoClass
10856+
class CustomXMLParts(_CustomXMLParts): # A CoClass
1085710857
...
1085810858

10859-
class CustomXMLSchemaCollection(typing.Protocol): # A CoClass
10859+
class CustomXMLSchemaCollection(_CustomXMLSchemaCollection): # A CoClass
1086010860
...
1086110861

10862-
class MsoEnvelope(typing.Protocol): # A CoClass
10862+
class MsoEnvelope(IMsoEnvelopeVB): # A CoClass
1086310863
...
1086410864

10865-
class SensitivityLabel(typing.Protocol): # A CoClass
10865+
class SensitivityLabel(ISensitivityLabel): # A CoClass
1086610866
...
1086710867

setup.py

+5-6
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,16 @@
1010
1111
Example usage::
1212
13-
# _Application is the main "Excel.Application" class
14-
from exceltypes import _Application
13+
# Application is the main "Excel.Application" class
14+
from exceltypes import Application
1515
1616
# If using win32com directly
1717
import win32com.client
18-
xl: _Application = win32com.client.Dispatch("Excel.Application")
18+
xl: Application = win32com.client.Dispatch("Excel.Application")
1919
2020
# Or if using pyxll
2121
import pyxll
22-
xl: _Application = pyxll.xl_app()
23-
22+
xl: Application = pyxll.xl_app()
2423
"""
2524
from setuptools import setup, find_packages
2625
from os import path
@@ -36,7 +35,7 @@
3635
description="Type annotations for Excel types using win32com / pywin32",
3736
long_description=long_description,
3837
long_description_content_type='text/markdown',
39-
version="0.0.1",
38+
version="0.0.2",
4039
packages=find_packages(),
4140
project_urls={
4241
"Source": "https://github.com/pyxll/exceltypes",

0 commit comments

Comments
 (0)