Python openpyxl教程:如何在Excel表格中指定区域写入数据
重点1:指定值要写成列表list形式,一行一个list,区域为一个大list;
重点2:定义的函数可以将Values按指定区域传入,在函数参数中指定起始行号和列号,即可通过函数遍历所有取值,得到该区域。
import openpyxl
from openpyxl.styles import Font, PatternFill, Border, Side, Alignment # 字体、填充图案、边框、侧边、对齐方式
filename=r"E:\XX沪深300指数增强XX.xlsx"
data = openpyxl.load_workbook(filename)
sheet = data['sheet1'] #拿到指定sheet
def writeInExcelArea(value, row_num, col_num): # row_num是起始行号, col_num是起始列号,都为数字
for i in range(0, len(value)):
for j in range(0, len(value[i])):
sheet.cell(row=i + row_num, column=j + col_num, value=str(value[i][j]))
# openpyxl 读写单元格时,单元格的坐标位置起始值是(1, 1),即下标最小值为1,否则报错!
if __name__ == '__main__':
value = [ ["指标", "指标得分"],
["收益指标", a],
["风险指标", b],
["收益风险指标", c], ]
writeInExcelArea(value=value,row_num=1,col_num=9)