从命名范围的Name对象中获取工作表名称

时间:2011-11-14 21:04:56

标签: excel named-ranges

我有:

Microsoft.Office.Interop.Excel.Workbook wb;
Microsoft.Office.Interop.Excel.Name name;

有没有办法在给定的工作簿中获取命名范围所在的工作表名称,假设我已经获得了命名范围的Name对象和wb?

3 个答案:

答案 0 :(得分:13)

是的,使用 Parent 属性在对象层次结构中前进:

ws = name.RefersToRange.Parent.name;

答案 1 :(得分:2)

Range.WorksheetRange.Parent的自我记录替代方案:

string wsName = name.RefersToRange.Worksheet.Name;


(或分2步:

Microsoft.Office.Interop.Excel.Worksheet ws = name.RefersToRange.Worksheet;
string wsName = ws.Name;

参考:
http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.name.referstorange.aspx
http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.range.worksheet.aspx
http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel._worksheet.name(v=office.15).aspx

答案 2 :(得分:0)

wb.Names(name).RefersToRange.Parent.Name