3

我想在 Excel 表的一列中添加下拉列表。如何使用电子表格添加它????

4

2 回答 2

7

如果您尝试将单元格数据验证下拉列表添加到列,则可以使用 ERange.Validation 属性中提供的 SpreadsheetGear.IValidation 接口来执行此操作。我在下面提供了一些示例代码,演示了如何构建两列数据验证。B 列从同一工作表上的一系列单元格中提取其下拉项;C 列从静态值列表中提取其下拉项。

// Create workbook and a local variable to Cells
IWorkbook workbook = Factory.GetWorkbook();
IRange cells = workbook.ActiveWorksheet.Cells;
// Build up some data to use in our validation list
cells["A1:A5"].Value = "=ROUND(RAND()*100, 0)";
// Create cell validation on Column B using values from other cells
cells["B:B"].Validation.Add(SpreadsheetGear.ValidationType.List, ValidationAlertStyle.Information, ValidationOperator.Default, "=$A$1:$A$5", "");
// Create cell validation on Column C using a static list
cells["C:C"].Validation.Add(SpreadsheetGear.ValidationType.List, ValidationAlertStyle.Information, ValidationOperator.Default, "a,b,c", "");

注意:我在 SpreadsheetGear 工作,为我们产品的客户和评估人员提供技术帮助。如果您还有其他问题,请随时通过 sales@spreadsheetgear.com 与我们联系。

于 2012-01-20T15:58:09.593 回答
3

您可以使用单元格验证。它的工作方式类似于您在 Excel 中的操作方式。

private void CreateList(SpreadsheetGear.IRange cell, string list)
{
  cell.Validation.Add(
        SpreadsheetGear.ValidationType.List,
        SpreadsheetGear.ValidationAlertStyle.Warning,
        SpreadsheetGear.ValidationOperator.Default,
        list, null);
}

在 Windows 窗体程序中,您可以这样称呼它:

workbookView1.GetLock();
try
{
  SpreadsheetGear.IRange cell =workbookView1.ActiveWorksheet.Cells["A1"];
  CreateList(cell, "Alabama,Alaska,Arizona,Arkansas,California,Colorado,Connecticut,Delaware,Florida");
}
finally
{
  workbookView1.ReleaseLock();
}
于 2012-01-20T16:01:12.970 回答