VSTO在文本框中显示选定的单元格引用
本文关键字:单元格 引用 显示 文本 VSTO | 更新日期: 2023-09-27 18:16:13
我有一个Windows窗体与值的列表显示每个相应的文本框,告诉程序在哪个单元格中显示它。当前用户输入一个范围(例如:"A1","G6"等),其余的留空。
是否有任何方法可以单击进入文本框,然后单击单元格并使该单元格引用出现在文本框中(就像Goal Seek的工作方式一样)?
在您的VSTO代码中,您应该能够处理工作表SelectionChange事件
例如,在我们拥有的VSTO项目中,我们在启动时订阅每个工作表的OnChange事件:
private List<Excel.Worksheet> _Worksheets = new List<Excel.Worksheet>();
private void ThisWorkbook_Startup(object sender, System.EventArgs e)
{
foreach (Excel.Worksheet sheet in Worksheets) //Could test for sheet name here
{
_Worksheets.Add(sheet);
sheet.SelectionChange +=
new Excel.DocEvents_SelectionChangeEventHandler(Sheet_SelectionChange);
}
}
你应该能够得到ActiveCell在你的处理程序,类似于:
Excel.Range activeCell = (Excel.Range) this.Application.ActiveCell;
//get the cell value (or other properties)
object value = rng.Value;
一旦你有了对单元格的引用,你就可以通过使用这个答案中的代码来获得地址。
你应该可以更新你的文本框的值