我有:
Microsoft.Office.Interop.Excel.Workbook wb;
Microsoft.Office.Interop.Excel.Name name;
有没有办法在给定的工作簿中获取命名范围所在的工作表名称,假设我已经获得了命名范围的Name对象和wb?
答案 0 :(得分:13)
是的,使用 Parent 属性在对象层次结构中前进:
ws = name.RefersToRange.Parent.name;
答案 1 :(得分:2)
Range.Worksheet
是Range.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