我有一个带有下拉列表的Excel文档,我正在尝试获取列表的值,选择一个(或者至少可以选择)一个由索引,因为他们不会改变)。
我尝试在 ICell 和 XSSFCell 上使用 SetCellValue 设置值,但它无法正常工作,只输入值和我需要选择它,因为Excel文档的其他部分会相应更改。
有没有办法使用NPOI或任何其他C#Excel库来执行此操作?
答案 0 :(得分:1)
如果您使用的是NPOI。您可以尝试其中一种方法。您也可以使用相同的方法setCellFormula,SetAsActiveCell,setErrorValue,setCellType等。
//Approach 1
var row = sheet.CreateRow(0);
row.Cells[targetColumn].SetCellValue("whatertypevalue");
//Approach 2
var namedRow = wb.GetSheetAt(sheetIndex).CreateRow(rowindex);
namedRow.CreateCell(columnIndex).SetCellValue("whatertypevalue");
//Approach 3
var namedRow1 = wb.GetSheetAt(0).GetRow(rowindex);
namedRow1.Cells[targetColumn].SetCellValue("whatertypevalue");
答案 1 :(得分:0)
使用此按钮浏览下拉列表。如果您正在使用下拉对象。我们正在使用shapes.item
您需要从Excel中识别形状对象名称。
var control = xlWorksheet.Shapes.Item("Drop Down 22").ControlFormat;
control.ListIndex = 5; \\This allows you to change the drop down to 5th element
Excel.Range xlRangeloc= xlWorksheetH.get_Range("D5");
xlRangeloc.Value = "OptionOne";\\If the drop down is a combo box bound to a excel cell value