python 代码:
从指定的EXCEL文件,复制指定的记录到新文件中(比如按列筛选):
# -*- coding: utf-8 -*-
import xlrd
import xlwt
workbook = xlrd.open_workbook(r'c:\temp\201701工资表.xls') #打开此地址下的excel文档
table = workbook.sheets()[0] #进入第一张表
#第一张表的名称
table_name = workbook.sheet_names()[0]
print('表名为:',table_name)
#获取总行数
table_rows = table.nrows
print('总行数为:',table_rows)
#获得总列数
table_cols = table.ncols
print('总列数为:',table_cols)
#定义新表的相关信息
workbook_new = xlwt.Workbook(encoding = 'utf-8')
table_new = workbook_new.add_sheet(table_name, cell_overwrite_ok=True)
#定义需要筛选的记录
list_name=['姓名1','姓名2','姓名3'] #请将需要的姓名写在这里
#定义行,默认从第0行开始
y=0
#开始按行循环读取记录
for i in range(table_rows): # 循环逐行打印
if table.cell(i,0).value in list_name or i==0: #如果是第一行,一般是标题,打印出来 或者用 continue 跳过
#print (table.row_values(i))
temp=table.row_values(i)
temp.insert(0,table_name) #在列表前,加一列,内容为文件名或者表名
print(temp)
#开始按行,一列一列写入新表中
for x in range(len(temp)):
table_new.write(y,x,temp[x])
y=y+1 #写入一行后,行号增加1
#保存新表
workbook_new.save(r'c:\temp\new.xls')
网友评论