c#:以编程方式在工作表范围内创build一个“命名范围”
我们如何创build一个范围设置为工作表的“命名范围”? (因为我们可以从Excel手动执行此操作,所以我想在代码中有这种方法)
使用“ Range.Name
”属性设置名称将创build工作簿范围的命名范围。 我试着用'<Sheet Name>!'作为范围名称的前缀。 如这里所build议的那样,但是它不起作用。 这个名字没有被设置。
任何想法如何可以在C#中完成?
更新(2013年5月16日):通过shahkalpesh工作。 我使用的原始代码(在VS 2010中)是:
using Excel = Microsoft.Office.Interop.Excel; Excel.Worksheet ws = Globals.ThisAddIn.Application.ActiveSheet; Excel.Range range = ws.Range[ws.Cells[x,y], ws.Cells[(x + height), (y + width)]]; range.Name = "MyName"; // MyName in workbook scope
修改后的代码是:
ws.Names.Add("MyName", range); // MyName in worksheet scope
谢谢,idssl。
假设:
Sheet1具有单元格A1:A4,您要创build一个命名范围
VBA:
Sheet1.Names.Add("tada", Sheet1.Range("A1:A4")
我想这将是相同的C#(除了在最后),并传递可选参数的空参数。