首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >检查特定列的单元格值是否为空,如果为空,则使用python放入一些数据

检查特定列的单元格值是否为空,如果为空,则使用python放入一些数据
EN

Stack Overflow用户
提问于 2021-07-04 08:11:13
回答 1查看 75关注 0票数 0

假设我有一个Excel表,如下所示:

我正在使用openpyxl在空单元格中编写一些数据验证。但是要应用它,我需要检查从C列到D列的单元格是否有值,如果没有,我想用一些数据验证来填充这些单元格。

例如,我如何才能得到C3,C4,D3,D4,E3,E4,F3,F4为空的输出,这样我就可以用来验证单元格了。

这是我将用来添加数据验证的代码,这就是为什么我需要例如C3:

代码语言:javascript
运行
复制
data_val = DataValidation(type="list",formula1='=$E$3:$R$3') 
ws.add_data_validation(data_val)
data_val.add(ws["C3"]) 
EN

Stack Overflow用户

回答已采纳

发布于 2021-07-04 09:24:26

我找到了我正在寻找的答案,所以这是我将使用的代码,如果有人需要它的话:

代码语言:javascript
运行
复制
import openpyxl
from openpyxl.worksheet.datavalidation import DataValidation
import re

path=r'...'
wb=openpyxl.load_workbook(path)

ws = wb.active

#for Column C
for row in range(ws.max_row):
    for column in "C":
        cell_name = "{}{}".format(column, row+1)
        value= ws[cell_name].value
        if value is None:
           k=re.findall(r'[A-Za-z]+|\d+', cell_name)
           data_val = DataValidation(type="list",formula1=''=$E${0}:$R${1}')'.format(k[1],k[1])) 
           ws.add_data_validation(data_val)
           data_val.add(ws[cell_name]) 


wb.save()
票数 -1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68240786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档