在SpreadsheetGear中使用已定义名称的支持不如Excel的其他组件那么好。
可以这样做吗?如果是这样,怎么样?
当我从另一个工作簿中复制工作表时,范围仅限于该工作表,我希望能够将其应用于整个工作簿。
答案 0 :(得分:2)
这是您使用工作簿范围定义名称的方法
SpreadsheetGear.IWorkbook workbook = workbookView.ActiveWorkbook;
SpreadsheetGear.INames definedNames = workbook.Names;
definedNames.Add(name, refTo, SpreadsheetGear.ReferenceStyle.A1);
definedNames[name].Comment = "SomeComment";
definedNames[name].Visible = true;
“当我从另一个工作簿中复制工作表时,范围仅限于该工作表”
如果我理解你的意思,你就不能做你想做的事,这在逻辑上是不可能的。定义的名称始终应该具有“工作簿范围”,即,workbook.Names
保存已定义的名称信息。现在基于这个事实,如果您将工作簿A中的工作表复制到工作簿B,则该工作表不包含该工作簿的定义名称(workbookA.Names
),因此它永远不会保留其引用。
我希望这会有所帮助。