c# - 以编程方式检查是否选择了多个工作表(CTRL+单击)
问题描述
例如,用户使用 CTRL+单击在工作簿中选择多个工作表。如何确定哪些工作表被选中,哪些不被选中?我正在玩这个,但我找不到任何有用的属性来检查。
Excel.Sheets abc = Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets;
foreach (Excel.Worksheet sheet in abc)
{
if (sheet.EnableSelection != Excel.XlEnableSelection.xlNoSelection)
{
}
}
解决方案
我挣扎了将近2个小时。但是在我发布这个问题后不久,我找到了解决方案。ActiveWindow.SelectedSheets提供了我正在寻找的东西。
Excel.Sheets abc = Globals.ThisAddIn.Application.ActiveWindow.SelectedSheets;
foreach (Excel.Worksheet sheet in abc)
{
string asdf = sheet.Name;
}
我以前不知道ActiveWindow。仍然希望这对其他人也有用。
推荐阅读
- vim - 如何替换 Vim 中接下来 3 行中的字符?
- css - 在 wordpress 中更改搜索栏背景颜色
- javascript - 如何在 Vuetify.js 中控制选择框的选择?
- python - 使用键或值python的中位数混淆
- rust - 为什么 rust 的 read_line 函数使用可变引用而不是返回值?
- python - 把C的printf函数变成Python
- python - 在 Python 中使用 Opencv/skimage 从教科书中点击的问题的自动去歪斜图像
- google-apps-script - Google Apps 脚本错误 - 来自 Google 表格的多行,但 Google 云端硬盘中只有一个文件 - “迭代器已到达末尾”
- reactjs - 道具不存在?使用 styled-component 和 typeScript,已经实现了 `interface`
- ruby-on-rails - 如何避免rails“显示”路线中的序数、整数路线(增量ID)?