看图:
其中对应的数字是错误的。
任务:把2018-12-31T... 中的日子(31)提取出来复制到第四列。
思路:
用python遍历excel第一列的数值,然后选中所选的值赋值给第四列,知道第一列数值遍历完。例如excel 第一列第二行的数值为2016-01-01T00:00:00Z,那我们就选择T前面的两个数字,例子中01为所选值,如果所选值里面第一个是0,则把0删除。赋值过去的格式为数字格式,
代码如下:
import openpyxl
# 打开 Excel 文件
workbook = openpyxl.load_workbook('D:111.xlsx')
sheet = workbook.active
# 遍历第一列的每个单元格,从第二行开始
for row in sheet.iter_rows(min_row=2, max_row=sheet.max_row, min_col=1, max_col=1):
cell = row[0]
value = cell.value
# 提取所选值
selected_value = value.split('T')[0][-2:].lstrip('0')
# 将所选值赋给第四列,并设置为文本格式
target_cell = sheet.cell(row=cell.row, column=4)
target_cell.value = int(selected_value) if selected_value.isdigit() else selected_value
target_cell.number_format = '0' if selected_value.isdigit() else '@'
# 保存修改后的 Excel 文件
workbook.save('D:111.xlsx')
结果展示: