使用 c# 写入隐藏的 Excel 工作表

Write to a hidden Excel Worksheet with c#

我正在为 excel 编写一个插件,我必须在 excel 文件中存储特定于工作簿的设置。我尝试创建一个新工作表并将其隐藏。

settingsSheet.Visible = XlSheetVisibility.xlSheetHidden;

现在我的应用程序总是写入我打开的工作表,而不是隐藏的设置工作表。如果我删除隐藏工作表的部分,它工作正常。

有没有办法写入隐藏的 excel 工作表? 或者有更好的存储设置的方法吗?

编辑:附加代码

Worksheet newWorksheet;
string newWorksheetname = "SettingsSheet";
foreach (Worksheet sheet in ActiveWorkbook.Sheets)
        {
            if (sheet.Name == newWorksheetname)
            {
                newWorksheet = sheet;                   
            }
        }
if (newWorksheet == null)
 {
  newWorksheet = (Worksheet)Globals.ThisAddIn.Application.Worksheets.Add();
            newWorksheet.Name = newWorksheetname;
  }
newWorksheet.Visible = XlSheetVisibility.xlSheetHidden;
newWorksheet.Cells[1,1].Value="settingsValue";

您是否正确引用了工作表?我认为您是在引用 ActiveSheet。

我没有找到解决问题的方法,所以我找到了一种将 xml 存储在 excel 文件中而不是隐藏在 sheet 中的方法。 What is the best way to store XML data in an Excel file