在Java中的Excel中创建下拉列表
#编程 #api #java #excel

excel下拉列表限制用户从单元格中的预先启发的值列表中选择一个值。这是一个非常有用的功能,可促进无错误的数据输入。本文将分享两个的示例,以编程方式创建下拉列表使用免费的Java API。

安装免费的API(2种方法)

1# Download (Free Spire.XLS for Java)并解压缩,然后将spire.xls.jar文件添加到您的项目中。

2#通过将以下配置添加到pom.xml。

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url>https://repo.e iceblue.com/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls.free</artifactId>
        <version>5.1.0</version>
    </dependency>
</dependencies>

示例1¶¶创建一个基于单元格范围内值的下拉列表

Java的Free Spire.xls允许您通过将单元范围内的值作为数据验证源来创建下拉列表。一个简单的示例代码如下所示。

import com.spire.xls.*;

import java.awt.*;

public class DropdownList {
    public static void main(String[] args) {

        //Create a Workbook object
        Workbook workbook = new Workbook();

        //Get the first worksheet
        Worksheet sheet = workbook.getWorksheets().get(0);

        //Add text to specified cells
        sheet.getCellRange("B2").setValue("Student");
        sheet.getCellRange("B3").setValue("Kelvin");
        sheet.getCellRange("B4").setValue("Frankie");
        sheet.getCellRange("C2").setValue("Subject");

        sheet.getCellRange("A10").setValue("MATH");
        sheet.getCellRange("A11").setValue("HISTORY");
        sheet.getCellRange("A12").setValue("SOCIAL");
        sheet.getCellRange("A13").setValue("PHYSICS");

        //Set font and cell styles
        sheet.getCellRange("B2:C2").getStyle().getFont().isBold(true);
        sheet.getCellRange("B2:C2").getStyle().getFont().setColor(Color.BLUE);
        sheet.getCellRange("B2:C4").getStyle().getFont().setSize(11);
        sheet.getCellRange("B2:C4").setRowHeight(18);
        sheet.getCellRange("B2:C4").setColumnWidth(12);

        //Create a drop-down list by referring to a specified data range as the data validation source
        sheet.getCellRange("C3:C4").getDataValidation().setDataRange(sheet.getCellRange("A10:A13"));

        //Save the result document
        workbook.saveToFile("ExcelDropdownList.xlsx", ExcelVersion.Version2013);
    }
}

DropdownList

示例2¶¶创建基于字符串数组中值的下拉列表

使用Java的Free Spire.xls,您还可以通过引用字符串数组中的值来创建下拉列表。一个简单的示例代码如下所示。

import com.spire.xls.*;

import java.awt.*;

public class ExcelDropdownList {
    public static void main(String[] args) {

        //Create a Workbook object
        Workbook workbook = new Workbook();

        //Get the first worksheet
        Worksheet sheet = workbook.getWorksheets().get(0);

        //Add text to specified cells
        sheet.getCellRange("B2").setValue("Student");
        sheet.getCellRange("B3").setValue("Kelvin");
        sheet.getCellRange("B4").setValue("Frankie");
        sheet.getCellRange("C2").setValue("Subject");

        //Set font and cell styles
        sheet.getCellRange("B2:C2").getStyle().getFont().isBold(true);
        sheet.getCellRange("B2:C2").getStyle().getFont().setColor(Color.BLUE);
        sheet.getCellRange("B2:C4").getStyle().getFont().setSize(11);
        sheet.getCellRange("B2:C4").setRowHeight(18);
        sheet.getCellRange("B2:C4").setColumnWidth(12);

        //Set the values of the drop-down list
        sheet.getCellRange("C3:C4").getDataValidation().setValues(new String[]{"MATH", "HISTORY", "SOCIAL", "PHYSICS"});

        //Create a drop-down list in the specified cell
        sheet.getCellRange("C3:C4").getDataValidation().isSuppressDropDownArrow(false);

        //Save the result document
        workbook.saveToFile("ExcelDropdownList2.xlsx", ExcelVersion.Version2013);
    }
}

ExcelDropdownList