通过OLE Object读写Excel数据时会遇到坐标转换的问题,程序里一般的是行、列数值,而Excel需要的是形如A12、E2、AE32的格式的坐标,下面的这个函数可以实现由TPoint到Excel格式坐标的转换。如果行或者列小于等于0,则转换出的行或列为空字符串。
function PointToExcelCell(P: TPoint): string;
var
row, col:Integer;
sRow,sCol:String;
begin
row := p.Y;
col := p.X;
if row sRow := ”
else
sRow := IntToStr(row);
if col sCol := ”
else if col sCol := Chr(64+col)
else
sCol := Chr(64 + (col div 26)) + Chr(64 + (col mod 26));
Result := sCol + sRow
end;