我想从功能区控件中获取活动范围。只有在功能区上的控件需要时才能访问所选单元格。
目前这就是我的做法;
public partial class ThisAddin
{
private void SheetSelectionChange(object sh, Range target)
{
int count = target.Count;
if (count < 5000) // This is for performance reasons
{
//Set a custom range property in the office ribbon
Req_Tool.ActiveRange = target;
{
}
}
我觉得这很虚弱和浪费 首先,每次选择更改我的代码都会运行。 其次,我使用或不使用两个选择副本。
必须有一个更好的方法来做到这一点,我忽略了。
答案 0 :(得分:3)
您可以通过访问Selection
对象的Application
属性来访问活动工作表中当前选定的范围。
private void button1_Click(object sender, RibbonControlEventArgs e)
{
this.ActiveRange = (Excel.Range)Globals.ThisAddIn.Application.Selection;
}
MSDN文档: