2010-03-10 16 views
1

我已經在工作表「A」上創建名稱範圍,所以我需要使用此範圍作爲工作表B上的驗證組合框。我想知道如何將驗證設置爲使用C#的範圍?如何使用C#在Excel中的另一個工作表上創建名稱範圍驗證?

+0

你想知道如何以編程方式?如果是的話,你需要哪些幫助部分(創建範圍;將驗證設置爲範圍,或者...)。或者你只是想知道如何手動做到這一點? – 2010-03-22 08:38:40

+0

我想知道如何使用C#將驗證設置爲範圍。 – Anonymous 2010-03-22 09:28:49

+0

gotcha。請看下面。 – 2010-03-22 18:19:17

回答

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); 
} 
+0

這是工作,但我需要4小時才接受這是正確的答案。此外,我有另一個相關的問題在這裏http://stackoverflow.com/questions/2497531/how-to-create-validation-range-from-value-that-input-by-user – Anonymous 2010-03-23 04:14:33

+0

偉大的聽到它的作品。現在看看另一個問題。 – 2010-03-23 04:56:15

相關問題