from win32com.client import Dispatch
import win32com.client
import time # 获取excel 对象 excel = win32com.client.Dispatch('Excel.Application') """
0代表隐藏对象,但可以通过菜单再显示
-1代表显示对象
2代表隐藏对象,但不可以通过菜单显示,只能通过VBA修改为显示状态
"""
excel.Visible = -1 # 打开excel myBook = excel.Workbooks.Open("e:/接口测试用例.xlsx") # sheet页,可以是序号,也可以是名称
mySheet = myBook.Worksheets("过程结果")
#excel的下标都是从1开始的
#mySheet = myBook.Worksheets(1) time.sleep(2) # 删除行,清除历史数据
mySheet.Rows("2:500").delete
#mySheet.Columns("1").delete # 获取当前sheet页有效的行数
LastRow = mySheet.usedrange.rows.count
print("该sheet页目前已经存在", LastRow, "行") # 获取当前sheet页有效的列数
LastColumn = mySheet.usedrange.columns.count
print(LastColumn) # 焦点转移到sheet页
mySheet.Activate
# 给单元格赋值 Cells(行,列)
mySheet.Cells(2, 2).Value = "使用win32com"
# 设置单元格字体位红色
mySheet.Cells(2, 2).Font.Color = -16776961
# 设置单元格字体为粗体
mySheet.Cells(2, 2).Font.Bold = True
# 设置单元格字体
mySheet.Cells(2, 2).Font.Name = "微软雅黑" time.sleep(1) mySheet.Activate
mySheet.Cells(2, 3).Value = "使用win32com"
# 设置单元格字体位绿色
mySheet.Cells(2, 3).Font.Color = -11489280
mySheet.Cells(2, 3).Font.Bold = True # 获取一个单元格的值
aCellValue=mySheet.Cells(2, 3).Value
print(aCellValue) # 获取一个范围的值,类型为嵌套的list
range_list=mySheet.Range(mySheet.Cells(1, 1), mySheet.Cells(5, 5)).Value # 给一个范围赋值,输入的值应该为嵌套的list
mySheet.Range(mySheet.Cells(6, 1), mySheet.Cells(10, 10)).Value = range_list
# 改变一个范围的属性值
mySheet.Range(mySheet.Cells(6, 1), mySheet.Cells(10, 10)).Font.Color = -11489280 # 如果范围是一行的话,赋值应该使用非嵌套的list,例如:
row_v=(1,2,3,4)
mySheet.Range(mySheet.Cells(11, 1), mySheet.Cells(11, 4)).Value = row_v # 给整个一行赋值,慎用。。。
mySheet.Rows(12).Value = row_v
print(range_list) #单元格添加颜色
WinSheet.Cells(1, 1).Interior.ColorIndex = 3
#或者Range("A1")
WinSheet.Range("A1").Interior.ColorIndex = 3
#3=红色,不同的值代表不同的颜色,可以去查看msdn vba 文档,这就不详细说了 #再是RGB调色方式#Cells 和 Range都可以,Range可以选择一大片区域
WinSheet.Cells(1, 1).Interior.Color = RGB(0, 0, 255)
#或
WinSheet.Range("A1").Interior.Color = RGB(255, 0, 255)
#字体的颜色也是一样
WinSheet.Cells(1, 1).Font.ColorIndex = 3
WinSheet.Cells(1, 1).Font.Color = RGB(0, 0, 255) # 保存
myBook.save # 退出
myBook.close

利用 pywin32 操作 excel的更多相关文章

  1. Python 利用Python操作excel表格之openyxl介绍Part2

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart()    ...

  2. Python 利用Python操作excel表格之openyxl介绍Part1

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...

  3. Python 利用Python操作excel表格之xlwt介绍

    利用Python操作excel表格之xlwt介绍   by:授客 QQ:1033553122 直接上代码   案例1 #!/usr/bin/env python # -*- coding:utf-8 ...

  4. C++中利用libxl操作Excel表格

    libxl是一款操作excel的商业库,支持C.C++.C#和Delphi.下文利用libxl在C++中实现了从excel文档的表1中随机挑选记录,保存到新建的表中.以下为代码: #include & ...

  5. java利用jxl操作Excel

    /** * 把从数据库查询到的数据,写入电子表格 * * @throws Exception */ public void createXls() throws Exception { Dao dao ...

  6. C#利用NPOI操作Excel文件

    NPOI作为开源免费的组件,功能强大,可用来读写Excel(兼容xls和xlsx两种版本).Word.PPT文件.可是要让我们记住所有的操作,这便有点困难了,至此,总结一些在开发中常用的针对Excel ...

  7. 利用python操作excel

    https://zhuanlan.zhihu.com/p/51292549 打开程序:https://segmentfault.com/q/1010000002441500

  8. VC操作excel

    http://www.cnblogs.com/witxjp/archive/2010/06/05/1752181.html   最近在做个数据库程序,因为有些数据用户要求导出到Excel文件显示(需要 ...

  9. Java操作Excel之POI简单例子

    /** * 利用POI操作Excel表单 * * 需要jar包: * HSSF针对03及以前版本,即.xls后缀 * |---poi-3.16.jar * XSSF针对07及以后版本,即xlsx后缀 ...

随机推荐

  1. Ioc:Autofac Registration Concepts

    Reflection Components When using reflection-based components, Autofac automatically uses the constru ...

  2. Python:日期和时间类型学习

    背景 在非开发环境经常需要做一下日期计算,就准备使用Python,顺便记下来学习的痕迹. 代码 1 # coding = utf-8 2 3 from datetime import * 4 5 ## ...

  3. intellij idea 无法启动或调试 spring-boot

    解决方案一: 原因是因为Working directory没有指定, 并且运行前要手动执行mvn clean install命令才可以.所以导致错误了.希望大家不要犯类似错误. 解决方式二: 看看你的 ...

  4. curl win

    curl -H "tocken: 123456789"   -H "userName: admin"  http://39.18.10.2/log/v1/err ...

  5. 开源项目MultiChoiceAdapter详解(四)——MultiChoiceBaseAdapter的使用

    MultiChoiceBaseAdapter是一个可以多选的BaseAdapter,使用的方式相比来说扩展性更强! 使用方式: 1.布局文件 2.写一个类继承MultiChoiceBaseAdapte ...

  6. List集合中的数据按照某一个属性进行分组

    有的时候,我们需要在java中对集合中的数据进行分组运算.例如:Bill对象有money(float)和type(String)属性,现有个集合List<Bill>,需要按照Bill的ty ...

  7. 如何看一段JAVA代码耗了多少内存

    简单的方法,如下: Runtime r = Runtime.getRuntime();  r.gc();  long startMem = r.freememory(); // 开始时的剩余内存  你 ...

  8. .NetCore中EFCore for MySql整理(二)

    一.简介 EF Core for MySql的官方版本MySql.Data.EntityFrameworkCore 目前正是版已经可用当前版本v6.10,对于以前的预览版参考:http://www.c ...

  9. 深度学习在推断阶段(inference)的硬件实现方法概述

    推断(Inference),就是深度学习把从训练中学习到的能力应用到工作中去. 精心调整权值之后的神经网络基本上就是个笨重.巨大的数据库.为了充分利用训练的结果,完成现实社会的任务,我们需要的是一个能 ...

  10. CentOS 7 在vmware中的网络设置

    一环境说明 二centos在vmware中的安装 三NAT网络设置 四设置固定IP 1修改网卡配置说明 2修改etcresolvconf 实现域名解析 五设置防火墙iptables 1 centos安 ...