micromax 发表于 2018-8-9 06:25:09

python操作Excel-11555901

import xlrd  
import xlwt
  import xlutils
  import win32com
  #xlrd
  #打开excel
  data = xlrd.open_workbook("I+P.xls")
  #查看文件中包含sheet的名称
  sheetNames = data.sheet_names()
  #得到第一个工作表,或者通过索引顺序或工作表名称
  firstTable = data.sheets()
  firstTable1 = data.sheet_by_index(0)
  # print firstTable
  # print firstTable1
  #获取行数和列数
  nrows = firstTable.nrows
  ncols = firstTable.ncols
  # print nrows,ncols
  #获取正行或整列的值(数组)
  test1 = firstTable.row_values(1)
  test2 = firstTable.col_values(1)
  # print test1,test2
  #单元格
  cell_A1 = firstTable.cell(0,0).value
  cell_C4 = firstTable.cell(2,3).value
  #
  # print cell_A1
  # print cell_C4
  #分别使用行列索引
  cell_A1 = firstTable.row(0).value
  cell_A2 = firstTable.col(1).value
  print cell_A1
  print cell_A2
  # #xlwt
  # #新建一个excel文件
  # file = xlwt.Workbook()
  # #新建一个sheet
  # table = file.add_sheet("yanshan",cell_overwrite_ok=True)
  # #cell_overwirte_ok参数控制单元格是否能够重写
  # #写入数据table.wirte(行,列,value)
  # table.write(0,1,"yanshan")
  # table.write(0,0,"test")
  # table.write(1,1,"jialing")
  # table.write(1,2,u"知青")
  #
  # #另外,可以使用style
  # style = xlwt.XFStyle()#初始化样式
  # font = xlwt.Font()#为样式创建字体
  # font.name = "Times New Roman"
  # font.bold = True
  # style.font = font#为样式设置字体
  # table.write(5,5,"some bold Times text",style)
  #
  # #保存文件
  # file.save("demo.xls")
  # #xlutils,具体操作实例
  # from xlrd import open_workbook
  # from xlutils.copy import copy
  #
  # rb = open_workbook(u"I+P.xls", formatting_info=True)
  # #参数formatting_info=True带格式拷贝
  # wb = copy(rb) #经过copy后得到的wb就是可写的Workbook对象了
  # #注:不支持图片拷贝,且支持的颜色种类较少
  # #对其进行写操作
  # ws = wb.get_sheet(2)
  # ws.write(2, 0, "changed!")
  #
  # wss = wb.add_sheet("1223", 1)
  # wss.write_merge(2, 2, 0, 5, "changed!")
  # # wss.wirte(2, 0, "123")
  #
  # wb.save("I+P.xls")
  #win32com
  # 调用com组件操作Excel,大部分函数调用类似VBA(可查看VBA帮助文档)
  # 操作步骤:
  # 连接COM库
  xlsApp = win32com.cllient.Dispatch("Excel.Application")
  xlsApp = win32com.client.DispatchEx("Excel.Application")
  #区别:DispatchEx新建一个Excel进程
  #创建表(或打开)
  book = xlsApp.Workbooks.Open(filename)
  #新建
  book = xlsApp.Workbooks.Add()
  #获取页签
  sheet = book.Wooksheets(n) #n为名字或索引
  #添加页签
  sheet = book.Wooksheets.Add(name)
  #页签句柄属性
  sheet.name
  #删除页签
  Worksheets(n).Delete()
  #单元格赋值
  sheet.Cells(r,c).Value
  #保存工作表
  book.Save()
  book.SaveAs(filename)
  #关闭工作表
  books.Close(SaveChange=False)
  #关闭COM组件
  xlsApp.Application.Quit()
  del xlsApp
  #删除行/列
  sheet.Rows(r).Delete
  sheet.Columns(r).Delete
  #设置所有行/列高
  sheet.Rows.RowsHeigh
  sheet.Columns.ColumnWidth
  #Excel拷贝对象:
  sheet1.copy(sheet2) #页签拷贝
  Range1.copy(Range2) #范围拷贝
  #多线程操作Excel使用的特殊函数(动态链接):
  pythoncom.CoInitialize() #开辟套件
  pythoncom.CoUnInitialize()#回收套件
页: [1]
查看完整版本: python操作Excel-11555901