通过“Microsoft.Office.Interop.Excel”操作Excel的时候,总是需要用到单元格的地址。下面的代码实现了根据行列号获取单元格地址的功能。
1 ///<summary> 2 ///得到单元格的地址,支持 27*26 列 3 ///</summary> 4 ///<param name="row">行</param> 5 ///<param name="col">列</param> 6 ///<returns>返回地址</returns> 7 private string GetAddress(int row, int col) 8 { 9 if (row < 1 || col < 1 || col > 27 * 26) 10 throw new OverflowException(); 11 12 string addressStr = String.Empty; 13 col = col - 1; 14 int num = col / 26; 15 16 if (num > 0) 17 { 18 addressStr = Convert.ToChar(num - 1 + 65).ToString(); 19 } 20 21 char addressChr = Convert.ToChar(col % 26 + 65); 22 23 addressStr = addressStr + addressChr + row.ToString(); 24 return addressStr; 25 }