C#-选择单元格在右下角

时间:2018-09-11 13:00:37

标签: c# excel interop excel-interop

我正在寻找一种将所选单元格从左上移到右下的方法。我试图使用xlDirection,但是突出显示了所有内容,并且不允许我组合动作。

A   B   C
1   4   7
2   5   8
3   6   9

我从A开始,现在只想关注9。excels的大小发生了变化,因此我无法指定每次要查找的实际单元格。 我希望有类似Ctrl + Down或Ctrl + Right的命令可以使我进入单元格。

2 个答案:

答案 0 :(得分:0)

您不能向该对象发送击键吗?

答案 1 :(得分:0)

所有按键的参考可以在这里找到: https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.excel._application.sendkeys?view=excel-pia

public class Navigator
{
    private Excel.Application excel;

    private Excel.Workbook workbook;

    public void NavigateToBottomRight(string filePath, string worksheetName)
    {
        excel = new Excel.Application();
        excel.Visible = true;
        workbook = excel.Workbooks.Open(filePath);
        var worksheet = workbook.Worksheets.Cast<Excel.Worksheet>().FirstOrDefault(x => x.Name == worksheetName);

        Excel.Range cell = worksheet.Cells[1, 1];
        cell.Activate();

        string controlRight = "^{Right}";
        string controlDown = "^{Down}";

        excel.SendKeys(controlRight, true);
        excel.SendKeys(controlDown, true);

        //Do other work here

        workbook.Save();
        excel.Quit();
    }
}

希望这会有所帮助!