如何使用VSTO 2010 for Excel按名称显示工作表

时间:2010-09-28 05:26:42

标签: c# excel vsto

我从未使用过VSTO,而且我发现2010年很难找到一个好的学习辅助工具。

我的需求很简单,我有一个包含42个工作表的业务工作簿(我在20个网站上猜测但是在计算后发现了一个令人惊讶的数字)。我想使用VSTO添加功能区(这部分很简单),以便员工轻松浏览大量页面。我似乎无法找到c#代码来显示我可以简单地添加到按钮的click事件的特定工作表(最好是名字)。

由于

1 个答案:

答案 0 :(得分:10)

在工作表对象(类型Activate)上调用Microsoft.Office.Tools.Excel.Worksheet方法。

您可以在ThisWorkbook课程中或通过Globals.ThisWorkbook按名称执行以下操作:

private Excel.Worksheet GetWorksheetByName(string name)
{
  foreach (Excel.Worksheet worksheet in this.Worksheets)
  {
    if (worksheet.Name == name)
    {
      return worksheet;
    }
  }
  throw new ArgumentException();
}

private void ActivateWorksheetByName(string name)
{
  GetWorksheetByName(name).Activate();
}

调用ActivateWorksheetByName并传递要显示的工作表名称。