2

在 SpreadsheetGear 中对定义名称的支持不如 Excel 的其他组件好。

这可以做到吗?如果是这样,怎么做?

当我从另一个工作簿复制工作表时,范围仅限于该工作表,我希望能够将其应用于整个工作簿。

4

1 回答 1

3

这是您定义具有工作簿范围的名称的方式

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) 的定义名称,因此它永远无法保存它们的引用。

我希望这有帮助。

于 2012-12-06T18:05:50.347 回答