首页 > 其他分享 >一个xls格式excel 第9列的下拉框的默认值是“是”和“否”,讲帮我使用apache poi,从第5行开始修改他的下拉值为“男”、“女”、和“第三性别”

一个xls格式excel 第9列的下拉框的默认值是“是”和“否”,讲帮我使用apache poi,从第5行开始修改他的下拉值为“男”、“女”、和“第三性别”

时间:2024-08-15 18:15:45浏览次数:13  
标签:下拉值 org new poi apache import 默认值 usermodel 下拉框

import org.apache.poi.hssf.usermodel.HSSFDataValidation;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.DataValidation;
import org.apache.poi.ss.usermodel.DataValidationConstraint;
import org.apache.poi.ss.usermodel.DataValidationHelper;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.ss.util.CellRangeAddressList;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.Arrays;

public class ExcelDropDownModifier {
    public static void main(String[] args) throws Exception {
        FileInputStream fis = new FileInputStream("path/to/your/excel.xls");
        HSSFWorkbook workbook = new HSSFWorkbook(fis);
        HSSFSheet sheet = workbook.getSheetAt(0); // 假设修改第一个工作表
        String[] cers = Arrays.asList("男", "女", "第三性别").toArray(new String[0]);

        // 创建数据验证帮助器
        DataValidationHelper helper = sheet.getDataValidationHelper();

        // 参数分别为 起始行索引(第5行)、结束行索引、起始列索引(第9列)、结束列索引(第9列)
        CellRangeAddressList cellRangeAddressList = new CellRangeAddressList(4, sheet.getLastRowNum(), 8, 8);

        // 创建数据验证约束,查询数据作为下拉列表的选项
        DataValidationConstraint constraint = helper.createExplicitListConstraint(cers);

        // 创建数据验证
        DataValidation validation = helper.createValidation(constraint, cellRangeAddressList);

        // 应用数据验证到工作表
        sheet.addValidationData(validation);
        // 写回修改
        FileOutputStream fos = new FileOutputStream("path/to/your/excel_updated.xls");
        workbook.write(fos);
        fos.close();

        // 关闭资源
        workbook.close();
        fis.close();
    }
}    

 

标签:下拉值,org,new,poi,apache,import,默认值,usermodel,下拉框
From: https://www.cnblogs.com/r1-12king/p/18361545

相关文章

  • 定位下拉框
    一、下拉框定位下拉框有三种方法:1、下标定位下拉框:select_by_index2、value属性值定位下拉框:select_by_value3、文本内容定位i下拉框:select_by_visible_text定位之前要导入select类:fromselenium.webdriver.support.selectimportSelect二、实战:案例网址:https://yz.......
  • VUE二级联动,改变一级下拉框,清空二级下拉框
    在清空二级下拉框时,直接使用this.formData.xxx=''会出现清空失败的问题。使用this.$set(this.formData,'xxx','')解决<el-form-itemlabel="所属地市"prop="blongId1"><el-selectv-model="bmixForm.blongId1&q......
  • 025.Vue3入门,父页面给子页面传递数据,校验Props给出默认值
    1、App.vue代码:<template><Father/></template><scriptsetup>importFatherfrom'./view/Father.vue'</script><style></style>2、Father.vue代码<template><h3>父页面</h3><Chil......
  • SQL Server给表添加及删除主键Primary Key及默认值Default约束
    1.添加表的主键(PrimaryKey)和默认值(Default)约束在SQLServer中,给表添加主键(PrimaryKey)及默认值(Default)约束是数据库设计和维护中常见的操作。这些操作可以通过ALTERTABLE语句在表已存在的情况下执行,也可以通过CREATETABLE语句在创建表时直接指定。下面分别介绍这两种情......
  • 动态修改el-select 选中的值字体颜色 和下拉框字体颜色
    <el-table-columnlabel="优先级"width="120"><templateslot-scope="scope"><div:class="{'priorit1':scope.row.taskLevel===1,'priorit2�......
  • Bootstrap5 Navbar多级下拉框
    实现目标:  1、访问 Bootstrap5-navbar  2、修改dropdown为多级<!DOCTYPEHTML><htmllang="en-US"><head> <metacharset="UTF-8"> <title></title> <linkrel="stylesheet"href="https://cdn.j......
  • 如何使 argparse 与枚举和默认值完美配合?
    我有一个枚举:fromenumimportauto,EnumclassMyEnum(Enum):ONE=auto()TWO=auto()THREE=auto(),我想将它用作argparse的参数。更具体地说,我想创建一个接受枚举名称之一("one","two","three")并且可能具有默认值的参数,并且相......
  • 关于WPF私有属性默认值,导致绑定异常问题
    报错信息:System.Windows.Markup.XamlParseException:““设置属性“System.Windows.FrameworkElement.Style”时引发了异常。”,行号为“292”,行位置为“68”。”InvalidOperationException:“[Unknown]”属性未指向路径“Fill.(0)[1].(1)”中的DependencyObject。 为排查这......
  • vue3 widthDefaults 设置props默认值
    测试代码<template><divclass="box"><div><i-ep-edit/></div><div><i-ep-chat-dot-round/></div><div><i-ep-close/></div></div></template><scriptl......
  • 信息学奥赛初赛天天练-45-CSP-J2020阅读程序1-字符数组默认值、字符串长度、字符数组
    PDF文档公众号回复关键字:202407122020CSP-J阅读程序11阅读程序(程序输入不超过数组或字符串定义的范围;判断题正确填√,错误填×。除特殊说明外,判断题1.5分,选择题3分,共计40分)01#include<cstdlib>02#include<iostream>03usingnamespacestd;0405ch......