How can i get the Cell address from excel

后端 未结 6 1132
遇见更好的自我
遇见更好的自我 2020-12-03 18:20

How can i get the Cell address from excel given a row and column number for example

row 2 and col 3 should return C2... Please help

6条回答
  •  情书的邮戳
    2020-12-03 18:43

    I'm not a big user of VSTO C# - I usually opt for VBA. However, the following pair of functions might be useful for you. Unsure if they can be streamlined some more:

    public string RangeAddress(Excel.Range rng)
    {
        return rng.get_AddressLocal(false, false, Excel.XlReferenceStyle.xlA1,
               missing, missing);
    }
    public string CellAddress(Excel.Worksheet sht, int row, int col)
    {
        return RangeAddress(sht.Cells[row, col]);
    }
    

    The RangeAddress will take any Excel range and throw you back the address. If you want the absolute style (with dollar signs, e.g. $C$3) then you have to change the first two parameters of the get_AddressLocal call to true, true.

    To get the cell address from a row/col pair, you can use CellAddress. It does need a sheet to get the address. However, you could swap in (Excel.Worksheet)ActiveSheet if you don't want to provide a sheet (this may or may not work, depending on what you have open in your VSTO session).

提交回复
热议问题