基于openpyxl打开现有的Excel或者新建一个Excel,新建Sheet,修改单元格值。
样例数据:附件2-全员体验测试报告汇总表-2015年8月.xlsx
代码如下:
# 采用openpyxl读写Excel
from openpyxl import Workbook,load_workbook
import datetime
print('测试0--新建一个Excel,增加一个sheet,获取/设置某个单元格的值,并保存')
wb2 = Workbook()
sht2 = wb2.active # 当前激活的表单
sht2.cell(1,4).value = '九九统计表' # sht1.cell(i,j).value,获取或修改单元格值时,cell的小标从1开始算
for p in range(2,10):
for q in range(1,p+1):
sht2.cell(p,q).value = str(q) + '*' + str(p) + '=' + str(p*q)
print(sht2.cell(p,q).value + ' ', end='')
print('')
wb2.save(datetime.datetime.now().strftime('%Y-%m-%d_%H-%M-%S')+'九九乘法表.xlsx')
wb = Workbook()
sht = wb.create_sheet('sheet_1')
sht['A1'] = 'hello,这是我新建的第一表格'
sht.cell(2,2).value = 'hello,world' # sht1.cell(i,j).value,获取或修改单元格值时,cell的小标从1开始算
sht.cell(1,2).value = 'by,hyl'
filename = datetime.datetime.now().strftime('%Y-%m-%d_%H-%M-%S')+ '_testExcel.xlsx'
wb.save(filename)
print('测试1--打开一个Excel,获取/设置某个单元格的值,并保存')
filename = '附件2-全员体验测试报告汇总表-2015年8月.xlsx'
wb1 = load_workbook(filename)
sht1 = wb1['测试报告模板'] # 根据sheet名称获取sheet
sht1_ = wb1.worksheets[0] # 根据列表获取sheet
print(sht1.cell(3,2).value) # sht1.cell(i,j).value,获取或修改单元格值时,cell的小标从1开始算
i = 0
for row in sht1.rows: # 遍历所有行
print(str(i) + ' ',end ='')
for cell in row: # 遍历所有列
print(str(cell.value) +' ',end ='') # end ='' 表示不换行
print('') # 换行符,或者 print()
i += 1
# 下面是重点
print('测试2')
i2 = 0
for row in sht1['A4:H8']: # 遍历部分数据的所有行
print(str(i2) + ' ',end ='')
for cell in row: # 遍历所有列
print(str(cell.value) +' ',end ='---') # end ='---' 表示以---分隔
print('') # 换行符,或者print()
i2 += 1
输出如下: