c# – 如何使用Open XML SDK 2.5设置活动工作表

c# – 如何使用Open XML SDK 2.5设置活动工作表,第1张

概述使用这里的例子 How to Copy a Worksheet within a Workbook 我已经成功地能够在我的excel文件中克隆/复制工作表,但是当我打开excel时,第二张工作表是活动(可见)工作表.我无法找到一个可以做什么的属性…..有没有办法指定哪些工作表是活动的? 我试图通过打开和编辑文件中的第一张纸来强制它,认为它是最后编辑的工作表,但是也没有用. 任何帮助都会很棒. TI 使用这里的例子 How to Copy a Worksheet within a Workbook

我已经成功地能够在我的excel文件中克隆/复制工作表,但是当我打开excel时,第二张工作表是活动(可见)工作表.我无法找到一个可以做什么的属性…..有没有办法指定哪些工作表是活动的?

我试图通过打开和编辑文件中的第一张纸来强制它,认为它是最后编辑的工作表,但是也没有用.

任何帮助都会很棒. TIA

更新:查看将.xlsx重命名为.zip时创建的workbook.xml我遇到了’activeTab’属性.快速更改我的代码,似乎工作得很好

public voID SetFirstSheetInFocus(String xlsxfile)    {        using (Spreadsheetdocument spreadSheet = Spreadsheetdocument.Open(xlsxfile,true))        {            //Get a reference to access the main Workbook part,which contains all references            WorkbookPart _workbookPart = spreadSheet.WorkbookPart;            if (_workbookPart != null)            {                WorkbookVIEw _workbookVIEw = spreadSheet.WorkbookPart.Workbook.BookVIEws.ChildElements.First<WorkbookVIEw>();                if (_workbookVIEw != null)                {                    _workbookVIEw.ActiveTab = 0; // 0 for first or whatever tab you want to use                }                      // Save the workbook.                _workbookPart.Workbook.Save();            }        }    }
解决方法 如果工作表的名称在变量中
sheetname

您可以将具有该名称的工作表设置为活动,如下所示:

using (var spreadsheetDoc = Spreadsheetdocument.Open(emptyHIPTemplatePath,true /* isEditable */,new OpenSettings { autoSave = false })){            var workbookPart = spreadsheetDoc.WorkbookPart;    var workBook = spreadsheetDoc.WorkbookPart.Workbook;    var sheet = workBook.Descendants<Sheet>().FirstOrDefault(s => s.name == sheetname);         var sheetIndex = workBook.Descendants<Sheet>().ToList().IndexOf(sheet);    var workBookVIEw = workBook.Descendants<WorkbookVIEw>().First();    workBookVIEw.ActiveTab = Convert.ToUInt32(sheetIndex);    ...    workBook.Save();            }
总结

以上是内存溢出为你收集整理的c# – 如何使用Open XML SDK 2.5设置活动工作表全部内容,希望文章能够帮你解决c# – 如何使用Open XML SDK 2.5设置活动工作表所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1247515.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存