From 7dc4fd2a7e48e8386713f73ce2f697b211dfcb90 Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Thu, 5 Mar 2015 21:47:27 +0000 Subject: [PATCH] fpspreadsheet: Fix 2nd parameter of formula HYPERLINK git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3996 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- components/fpspreadsheet/fpsexprparser.pas | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/components/fpspreadsheet/fpsexprparser.pas b/components/fpspreadsheet/fpsexprparser.pas index eba59c6e0..60f33bdf5 100644 --- a/components/fpspreadsheet/fpsexprparser.pas +++ b/components/fpspreadsheet/fpsexprparser.pas @@ -4087,11 +4087,20 @@ var cell: PCell; fs: TFormatSettings; dt: TDateTime; + p: Integer; + s: String; begin Result := ''; case Arg.ResultType of - rtString, - rtHyperlink : result := Arg.ResString; + rtString : result := Arg.ResString; + rtHyperlink : begin + s := Arg.ResString; + p := pos(HYPERLINK_SEPARATOR, s); + if p = 0 then + Result := s + else + Result := Copy(s, p + Length(HYPERLINK_SEPARATOR), Length(s)); + end; rtInteger : Result := IntToStr(Arg.ResInteger); rtFloat : Result := FloatToStr(Arg.ResFloat); rtBoolean : if Arg.ResBoolean then Result := '1' else Result := '0';