1、获取excel对应的对象
import openpyxl
wb = openpyxl.load_workbook('demo.xlsx')
2、从工作蒲中取得工作表
1、获取excel中的所有sheet名
使用
wb.sheetnames
而不是
wb.get_sheet_names()
2、获取excel中的某个sheet
使用
wb["Sheet1"]
而不是
wb.get_sheet_by_name('Sheet1')
3、获取excel打开时出现的excel
wb.active
4、创建新的sheet
ws1 = wb.create_sheet('Mysheet') #默认在最后
ws2 = wb.create_sheet('MySheet',0) #添加到开头
ws3 = wb.create_sheet('MySheet',-2) #添加到倒数第二的位置
3、从表中获取单元格
方式1:sheet['A1'] 第1行第A列
sheet['A1'].value 返回当前单元格的值
方式2:sheet.cell(row,column)
sheet.cell(1,2).value #获取第1行第2列的值
sheet.cell(r,c) #返回r行c列的cell对象
4、获取表的最大行和最大列
sheet.max_row #最大行数
sheet.max_column #最大列数
5、列 从数字到字母的转换
import openpyxl
from openpyxl.utils import get_column_letter
str1 = get_column_letter(900)
6、取得矩形区域的所有单元格
for rowOfCellObjects in sheet['A1':'C3']:
for cellObj in rowOfCellObjects:
print(cellObj.coordinate, cellObj.value)
print('---END OF ROW---')
7、获取某一行的cell和某一列的cell
#获取某一列的元组
list(sheet.columns[0]) #第零列(A列)
list(sheet.columns[1]) #第一列(B列)
#获取某一行的元组
list(sheet.rows[0]) #第零行(1行)
list(sheet.rows[1]) #第一行(2行)
for cellObj in sheet.columns[1]:
print(cellObj.value)
8、创建并保存Excel文档
import openpyxl
wb = openpyxl.Workbook() #创建一个空的工作excel
sheet = wb.active #默认有一张叫'Sheet'的表
sheet.title # ==‘Sheet’
sheet.title = 'New Title #修改sheet的名字
wb.save('abc.xlsx') #保存excel表格
9、修改并保存excel
当修改Workbook或它的工作表和单元格时,电子表格不会保存,除非调用save()工作蒲的方法
import openpyxl
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb.active
sheet.title = 'New Title #修改sheet的名字
wb.save('example_copy.xlsx') #保存excel表格
10、创建和删除工作表
import openpyxl
wb = openpyxl.Workbook() #创建excel对象
wb.sheetnames #默认只有'Sheet'
wb.create_sheet() #创建一张新的表sheetX,默认是最后一张表
wb.create_sheet(0,'First Sheet') #创建了一张叫First Sheet的表,并且在索引为1的地方
wb.create_sheet(2,'Middle Sheet') #创建了一张叫Middle Sheet的表,并且在索引为2的地方
#删除表
wb.remove(wb[‘要删除的标的名字’])
wb.remove(wb['sheet1'])
11、将值写入单元格,与将值写入字典中的键类似