VSTO获取Excel范围并放入文本框

时间:2015-07-13 20:12:34

标签: c# .net excel winforms vsto

我创建了一个自定义任务窗格,上面有几个输入。其中一个输入是文本框。

我想要做的是点击文本框,然后拖动选择一系列单元格并将范围设置为文本框。

例如,“条件格式”对话框窗口具有此功能。

如果我从自定义任务窗格更改为Excel,我会使用什么事件?

enter image description here

1 个答案:

答案 0 :(得分:2)

在您的无模式窗体中,只需向WorkSheet.SelectionChanged事件添加一个事件处理程序。

这样的事情:

public partial class Form1 : Form
{
    Microsoft.Office.Interop.Excel.Worksheet ws;

    public Form1()
    {
        InitializeComponent();
    }

    protected override void OnLoad(EventArgs e)
    {
        base.OnLoad(e);
        ws = Globals.ThisAddIn.Application.ActiveSheet;
        ws.SelectionChange += ws_SelectionChange;            

    }

    void ws_SelectionChange(Microsoft.Office.Interop.Excel.Range Target)
    {
        this.textBox1.Text = Target.Address; 
    }

    protected override void OnClosed(EventArgs e)
    {
        base.OnClosed(e);
        ws.SelectionChange -= ws_SelectionChange;
    }

}

希望这有帮助