通過表單控件,使用者可以快速地将資料填寫到模闆文檔中,輕松引用單元格資料并與其進行互動。本文通過Java代碼示例介紹如何在Excel表格中添加表單控件,包括文本框、單選按鈕、複選框、組合框、微調按鈕等;以及如何删除Excel中的指定表單控件。
程式運作環境:Java、IDEA、jdk1.8.0、無需安裝Microsoft Excel
使用工具:Free Spire.XLS for Java (免費版)
jar擷取及導入:官網下載下傳jar包,并解壓,将lib檔案夾下的jar檔案導入java程式。或者可通過maven倉庫下載下傳導入到Maven項目。如下導入效果:

【Java 示例1】添加表單控件
import com.spire.xls.*;
import com.spire.xls.core.*;
public class AddFormControl {
public static void main(String[] args) {
//建立工作簿,擷取第一個工作表
Workbook wb = new Workbook();
Worksheet sheet = wb.getWorksheets().get(0);
sheet.getCellRange("A2").setText("姓名: ");
//添加文本框
ITextBoxShape textbox = sheet.getTextBoxes().addTextBox(2, 2, 18, 65);
textbox.setText("李宏");
textbox.setHAlignment(CommentHAlignType.Center);
textbox.setVAlignment(CommentVAlignType.Center);
sheet.getCellRange("A4").setText("性别: ");
//添加單選按鈕1
IRadioButton radiobutton1 = sheet.getRadioButtons().add(4, 2, 18, 65);
radiobutton1.setText("男");
radiobutton1.setCheckState(CheckState.Checked);
//添加單選按鈕2
IRadioButton radiobutton2 = sheet.getRadioButtons().add(4, 4, 18, 65);
radiobutton2.setText("女");
sheet.getCellRange("A6").setText("愛好:");
//添加複選框1
ICheckBox checkbox1 = sheet.getCheckBoxes().addCheckBox(6, 2, 18, 65);
checkbox1.setCheckState(CheckState.Checked);
checkbox1.setText("攝影");
//添加複選框2
ICheckBox checkbox2 = sheet.getCheckBoxes().addCheckBox(6, 4, 18, 65);
checkbox2.setCheckState(CheckState.Checked);
checkbox2.setText("圍棋");
sheet.getCellRange("A8").setText("職業:");
sheet.getCellRange("A20").setText("學生");
sheet.getCellRange("A21").setText("教師");
sheet.getCellRange("A22").setText("醫生");
//添加組合框
IComboBoxShape combobox = sheet.getComboBoxes().addComboBox(8, 2, 18, 65);
combobox.setListFillRange(sheet.getCellRange("A20:A22"));
combobox.setSelectedIndex(2);
sheet.getCellRange("A10").setText("行政級别:");
//添加微調按鈕
ISpinnerShape spinnerShape = sheet.getSpinnerShapes().addSpinner(10,2,18,30);
spinnerShape.setCurrentValue(1);
spinnerShape.setDisplay3DShading(true);
spinnerShape.setLinkedCell(sheet.getCellRange("B10"));
spinnerShape.setMin(1);
spinnerShape.setMax(5);
//儲存文檔
wb.saveToFile("AddControls.xlsx", ExcelVersion.Version2013);
wb.dispose();
}
}
表單控件添加效果:
【Java 示例2】删除表單控件
import com.spire.xls.*;
public class RemoveFormControl {
public static void main(String[] args) {
//加載Excel工作簿
Workbook wb = new Workbook();
wb.loadFromFile("AddControls.xlsx");
//擷取第一個工作表
Worksheet sheet = wb.getWorksheets().get(0);
//删除工作表中的所有單選按鈕
for(int j = 0; j < sheet.getRadioButtons().getCount(); j ++){
sheet.getRadioButtons().get(j).remove();
}
//儲存文檔
wb.saveToFile("RemoveFormControl.xlsx",ExcelVersion.Version2013);
wb.dispose();
}
}
表單控件删除效果:
(本文完)