[英]How to create autocompletion in Excel?
在我的應用程序中,需要創建一個具有自動完成功能的Excel文件。 假設我要從數據庫中獲取一些值“ Data 1”,“ Data 2”,在獲取之后,我想將這些值綁定到excel的特定列。 因此,當用戶鍵入內容時,將提示“數據1”,“數據2” ...
如何實現呢? 需要幫助
您正在描述一種稱為數據驗證的功能。 它的主要目的是將單元格的可能值限制在一定范圍內,但是,正如您已經發現的那樣,這具有使Excel顯示可用值下降的便捷副作用。
您可以使用各種openXML庫執行類似的操作,這些庫允許您在.NET代碼中創建.xlsx文件。 我喜歡EPPlus ,它會讓您執行以下操作:
static void Main(string[] args)
{
var fInfo = new FileInfo("output.xlsx");
using (var excel = new ExcelPackage())
{
var sht1 = excel.Workbook.Worksheets.Add("DataSheet1");
sht1.Cells[1,1].Value = "Occupation:";
var validation = sht1.DataValidations.AddListValidation("A2");
foreach(var allowedValue in GetAllowedValues())
{
validation.Formula.Values.Add(allowedValue);
}
excel.SaveAs(fInfo);
}
}
private static IEnumerable<string> GetAllowedValues()
{
return new string []{"Doctor","Baker","Candlestick Maker"};
}
這給出了您要引用的下拉列表(我的屏幕抓圖來自LibreOffice,但您將在Excel中看到相同的效果):
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.