excel单元格数据有效性自定义

=IF($I1="无",($J2="")*($K2=""))
意思就是,我I列输入是“无”的话,J列和K列就为空。
然后我需要完善一下这个公式,要求:我I列输入是“无”的话,J列和K列就为空,或者 列输入是“有”的情况,列和K列只能输入“是”或者“否”。


(1)在I1单元格加入有效性检查

菜单 “数据” -> “有效性” -> “设置” -> “允许” -> “序列” -> “来源” -> “无,有” -> “确定”


(2)在J1单元格加入有效性检查

菜单 “数据” -> “有效性” -> “设置” -> “允许” -> “自定义” -> “公式” -> “=OR(AND(I1="无",J1=""),AND(I1="有",OR(J1="是",J1="否")))”


(3)在K1单元格加入有效性检查

菜单 “数据” -> “有效性” -> “设置” -> “允许” -> “自定义” -> “公式” -> “=OR(AND(I1="无",K1=""),AND(I1="有",OR(K1="是",K1="否")))”
(4)选中整个J列,菜单 “数据” -> “有效性” -> “对话框提示” -> “是”
(5)选中整个J列,菜单 “数据” -> “有效性” -> “对话框提示” -> “是”

上面的方案只是限制了I列和J列不能乱输入(乱输会报错),但没有限制I列选定后乱改,由于是公式方案,也没有办法做到“不能保存”。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,您的问题是关于Excel数据有效性自定义格式和在Java中设置数据有效性自定义正则表达式的方法。 首先,关于Excel数据有效性自定义格式为“2023-06”,您可以按照以下步骤操作: 1. 在Excel中选中需要设置数据有效性单元格单元格范围。 2. 点击“数据”选项卡,然后在“数据工具”组中选择“数据有效性”。 3. 在“设置数据有效性”对话框中,选择“日期”类型,然后在“允许”下拉菜单中选择“自定义”。 4. 在“公式”框中输入以下公式:=TEXT(日期单元格,"yyyy-mm"),其中“日期单元格”是您要设置的单元格的引用,例如:A1。 5. 点击“确定”按钮,完成设置。 关于在Java中导出Excel并设置数据有效性自定义正则表达式,您可以使用Apache POI库来实现。具体步骤如下: 1. 添加Apache POI依赖项到您的项目中。您可以在Maven中添加以下依赖项: ```xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.1.2</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.1.2</version> </dependency> ``` 2. 创建一个新的Workbook对象,例如: ```java Workbook workbook = new XSSFWorkbook(); ``` 3. 创建一个新的Sheet对象,例如: ```java Sheet sheet = workbook.createSheet("My Sheet"); ``` 4. 创建一个新的数据行和单元格,例如: ```java Row row = sheet.createRow(0); Cell cell = row.createCell(0); ``` 5. 设置单元格的值,例如: ```java cell.setCellValue("2023-06"); ``` 6. 创建一个新的数据有效性对象,例如: ```java DataValidationHelper dvHelper = sheet.getDataValidationHelper(); DataValidationConstraint dvConstraint = dvHelper.createCustomConstraint("yyyy-mm"); ``` 7. 将数据有效性对象应用到单元格上,例如: ```java CellRangeAddressList addressList = new CellRangeAddressList(0, 0, 0, 0); DataValidation dataValidation = dvHelper.createValidation(dvConstraint, addressList); sheet.addValidationData(dataValidation); ``` 8. 最后,将Workbook写入到输出流中,例如: ```java OutputStream outputStream = new FileOutputStream("My Excel File.xlsx"); workbook.write(outputStream); outputStream.close(); ``` 这样,您就可以在Java中导出Excel并设置数据有效性自定义正则表达式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值