我在工作表“A”上创建了名称范围,所以我需要在工作表B上使用此范围作为验证ComboBox。我想知道如何使用C#将验证设置为范围?
答案 0 :(得分:2)
工作表无关紧要,因为您只需引用列表值范围的命名范围。您可以在下面(假设Interop) - listValidatingRange
是您需要在下拉列表中显示您的值的地方 - 将其添加为命名范围。 cellThatNeedsValidating
是您希望下拉列表出现的单元格 - 将其添加为命名范围。然后,在cellThatNeedsValidating
上,将验证添加为"=ListValidatingRange"
。
private void SetValidation()
{
Microsoft.Office.Tools.Excel.NamedRange listValidatingRange =
this.Controls.AddNamedRange(this.Range[""C1:C13"", missing],
"ListValidatingRange");
Microsoft.Office.Tools.Excel.NamedRange cellThatNeedsValidating =
this.Controls.AddNamedRange(this.Range[""A1"", missing],
"cellThatNeedsValidating");
cellThatNeedsValidating.Validation.Add(
Excel.XlDVType.xlValidateList ,
Excel.XlDVAlertStyle.xlValidAlertStop,
missing, "=ListValidatingRange", missing);
}