使用Python通过win32 COM打开Excel并添加Sheet的方法

yipeiwu_com5年前Python基础

对win32 COM不是很熟悉,不知道一个程序究竟有多少属性或者方法可以操作。仅仅是一个Sheet页的添加就费了我好长时间,因为这种成功来自于试探。

编辑代码如下:

#!/usr/bin/python
 
from win32com.client import Dispatch
 
xlApp = Dispatch('Excel.Application')
xlApp.Visible = True
xlApp.Workbooks.Add()
xlApp.Worksheets.Add()

程序运行结果:

我用的Excel版本默认打开的时候只有一个Sheet页,通过以上操作后打开的时候出现了两个Sheet页,可见创建Sheet页成功。

如果要指明Sheet页的名字,那么就得在创建的时候修改一个属性。修改代码如下:

#!/usr/bin/python
from win32com.client import Dispatch
xlApp = Dispatch('Excel.Application')
xlApp.Visible = True
xlApp.Workbooks.Add()
xlApp.Worksheets.Add().Name = 'test'
xlSheet = xlApp.Worksheets('test')
xlSheet.Cells(1,1).Value = 'title'
xlSheet.Cells(2,1).Value = 123

程序执行结果如下:

从上面的结果可以看出,操作不仅实现了创建新的Sheet页同时还实现了给新创建的Sheet页命名的功能。在创建并命名结束后,又通过名称所引导这个Sheet页实现了信息的写入。

相关文章

Python复制文件操作实例详解

本文实例讲述了Python复制文件操作用法。分享给大家供大家参考,具体如下: 这里用python实现了一个小型的自动发版本的工具。这个“自动发版本”有点虚, 只是简单地把debug 目录...

Python sklearn KFold 生成交叉验证数据集的方法

源起: 1.我要做交叉验证,需要每个训练集和测试集都保持相同的样本分布比例,直接用sklearn提供的KFold并不能满足这个需求。 2.将生成的交叉验证数据集保存成CSV文件,而不是直...

Pytorch修改ResNet模型全连接层进行直接训练实例

之前在用预训练的ResNet的模型进行迁移训练时,是固定除最后一层的前面层权重,然后把全连接层输出改为自己需要的数目,进行最后一层的训练,那么现在假如想要只是把 最后一层的输出改一下,不...

Python装饰器使用实例:验证参数合法性

python是不带静态检查的动态语言,有时候需要在调用函数时保证参数合法。检查参数合法性是一个显著的切面场景,各个函数都可能有这个需求。但另一方面,参数合法性是不是应该由调用方来保证比较...

python生成特定分布数的实例

我就废话不多说了,直接上代码吧! from scipy.stats import binom, norm, beta, expon import numpy as np import...