gpt4 book ai didi

interop - 检查excel中是否存在工作表

转载 作者:行者123 更新时间:2023-12-03 18:27:55 25 4
gpt4 key购买 nike

如何使用互操作检查 Excel 中是否存在工作表。我尝试了以下操作,但如果不存在,它会抛出一个 COMException .. 有没有比实际查看异常更好的查找方法

    Worksheet sheet = null;
Sheets worksheets = some;

sheet = (Worksheet)worksheets.get_Item("sheetName");
if(sheet!=null)
{
//do something
}

编辑:

感谢您的输入。

我写了一个函数
private Dictionary<string, Worksheet> GetSheetsMap(Sheets worksheets)
{

if (worksheets == null)
throw new ArgumentNullException("worksheets");


Dictionary<string, Worksheet> map = new Dictionary<string, Worksheet>(StringComparer.CurrentCultureIgnoreCase);
foreach (Worksheet s in worksheets)
{
map.Add(s.Name, s);
}

return map;
}

我使用它如下
 Dictionary<string, Worksheet> sheetMap = GetSheetsMap(worksheets);
Worksheet sheet = null;


if (sheetMap.TryGetValue(ExtendedTemplateManager.BasicUserTemplate, out sheet))
{
//found it.
}
else
{
// not
}

最佳答案

你有一个 Workbook 对象吗?如果是这样,您可以遍历 Workbook.Sheets 数组并检查每个工作表的 Name 属性。

foreach (Sheet sheet in workbook.Sheets)
{
if (sheet.Name.equals("sheetName"))
{
//do something
}
}

关于interop - 检查excel中是否存在工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2722719/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com